Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Перечислите идеи и коротко обозначьте мысли которые у вас возникали по мере выполнения задания, в частности попробуйте ответить на вопросы:
Кажется, это связано с тем, что мы вычисляем градиент по 5 точкам, а не по какой-то окрестности. При повороте мы почти наверное не возьмем те же 5 точек, например. Если устремить параметр к 1, для ключевой точки будет появляться меньше дупликатов - это долно уменьшит число мэтчей, но увеличить их точность, а проблему не решит - мы всё ещё будем вычислять градиенты по потенциально разным точкам
"По-честному" нужно бенчмаркать каждый фрагмент кода, не совсем "по-честному" добавил флаги для включения\выключения дампов и распараллеливания, ускорение примерно вдвое. У моего процессора 8 ядер и по 2 потока на ядро
Это должно быть верно из свойства сверток с ядром гаусса. Визуально пирамиды совпадают
Для s+1 картинки октавы будем иметь
sigma = img_sigma * 2^octave
, а это похоже на sigma для первой картинки следующей октавыХотим искать экстремумы по s картинкам в DoG октавы, значит в DoG должно быть s+2 картинки, тогда в Gaussian - s+3
Они должны быть почти черными, т.к. разница частот в точке должна примерно совпадать. Так же должны быть видны белые контуры объектов, по размеру близкие к размеру ядра
Потому что гауссианы будут меньше отличаться
int oriRadius = (int) (ORIENTATION_WINDOW_R * (1.0 + k * (layer - 1)));
float orientation = atan2(dy, dx) * (180.0 / M_PI) + 90.0 - angle;
buildDescriptor 418
// Создайте PR.
// Дождитесь отработки Github Actions CI, после чего нажмите на зеленую галочку -> Details -> test_sift -> скопируйте весь лог тестирования.
// Откройте PR на редактирование (сверху справа три точки->Edit) и добавьте сюда скопированный лог тестирования внутри тега