|
0 / 0 / 0
Регистрация: 04.08.2020
Сообщений: 231
|
|
Как вычислить гистограмму градиентов ячейки 8×8?08.11.2020, 02:06. Показов 1743. Ответов 4
Доброго времени суток, предположим, что у меня есть фрагмент изображения 8 × 8 пикселей, и соответствующая матрица, заполненная значениями яркости каждого пикселя
Пусть для примера будет что-то вроде этого: 10 20 30 40 50 60 70 80 90 15 25 35 45 55 65 75 85 95 100 110 120 130 140 150 160 170 115 125 135 145 155 165 175 185 200 180 160 140 120 100 80 60 215 185 165 145 125 105 85 65 80 70 60 50 40 30 20 10 85 75 65 55 45 35 25 15 Я знаю, как находить направление градиента для пикселей центральных, например для пикселя на второй строчке третьего столбца (35) направление по горизонтали будет |25-45| = 20, а по вертикали |30-120| = 90 Но первое, что я не понимаю, как находить направление для крайних пикселей, например для пикселя первой строки первого столбца (10) У меня есть теория, что отсутствующие значения нужно заменять нулем, и тогда получим направление по x: |0-20| = 0, а направление по y: |0-15|=15 Хотя я и не уверен, что это так И я не понял, как строить гистограмму для этой ячейки 8 × 8, по-идеи она должна выглядеть в виде вектора (матрицы 9×1) размерностью 9, то есть нужно найти значения и направление для 9 пикселей (или же взять среднее значение и направление окружающих его пикселей), но я ровным счётом не понимаю, какие конкретно пиксели нужно брать для вектора из 9 значений Проще говоря, мне непонятно, как преобразовать 64 пикселя в 9 В итоге у меня два вопроса: Как считать направление для крайних пикселей, и как получить гистограмму ячейки (то есть сжать 64 пикселя в 9) Очень нужна помощь!
0
|
|
| 08.11.2020, 02:06 | |
|
Ответы с готовыми решениями:
4
Правильно ли я считаю гистограмму градиентов? Как сосчитать гистограмму ячейки 8 × 8? Как найти массив градиентов? |
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|
| 08.11.2020, 13:07 | |
|
Во-первых, написано в вопросе 8х8, а пример дан для какой-то сложной структуры, у которой в первых строчках 9 значений, в остальных - 8. Это так и задумано?
Во-вторых, "Я знаю, как находить направление градиента...." то, что вы написали - это не "градиент" и тем более не "направление градиента". И вовсе не ясно, что потом с этими данными - двумя полученными абсолютными разностями значений по осям вы собрались делать. В-третьих, теория, которая у вас есть - неверна. По логике рассуждения, в случае крайних точек надо брать абсолютное значение разности между значениями данной точки и соседней с ней и делить эту разность на два. Например для первого значения в четверной стоке (115) я бы взял |115-125|/2 (еще раз - это не градиент, и не направление градиента). Про то, почему и как вы получаете |0-20| = 0, а |0-15|=15 - я даже не спрашиваю. Подозреваю, что как и с термином "градиент", так и с термином "гистограмма" у вас какие-то непонятки. Термин "гистограмма" имеет устойчивое определение. Почему вы решили, что она должна иметь 9 "ячеек" (вообще-то у гистограммы интервалы, ну да ладно). О каких "значениях и направлениях пикселей(?!?) гистограммы идет речь?
0
|
|
|
0 / 0 / 0
Регистрация: 04.08.2020
Сообщений: 231
|
|
| 08.11.2020, 13:28 [ТС] | |
|
Да, прошу прощения, 9 элемент написал машинально, должно быть 8 × 8, с терминами пока что действительно путаюсь
Хочу реализовать алгоритм HOG, а для этого нужно понимать теорию, которая, к сожалению, не так подробно описана в интернете Вижу я это следующим образом: найти яркость пикселей, для каждого пикселя сосчитать направление по x и y, затем вычислить для каждого пикселя значение и градиент, после чего ужать 64 пикселя в 9 (и как это сделать, я не понимаю), после чего скомпоновать ячейки и в конечном итоге вычислить HOG
0
|
|
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|
| 08.11.2020, 13:50 | |
|
А вы хоть какую нибудь книгу по теме прочитали. Ладно, не книгу, в Гуугл искали?
https://www.analyticsvidhya.co... escriptor/ https://debuggercafe.com/image... escriptor/ https://kgeorge.github.io/2014... -detection
0
|
|
|
0 / 0 / 0
Регистрация: 04.08.2020
Сообщений: 231
|
|
| 08.11.2020, 14:17 [ТС] | |
|
Я всегда первым делом лезу в поисковики при возникновении проблемы
Две статьи, скинутые вами, я уже видел Я все равно не могу понять Вот вы мне объяснили, как рассчитывать направления по x и y для крайних пикселей, за это большое спасибо, так как я никак не понимал этого Но я не понимаю, как сжать 64 пикселя в 9 То есть как просто пиксель в нужную ячейку занести в первой статье неплохо показано, но какие именно пиксели нужно заносить, и что будет, если в одну ячейку вектора 9×1 попадет два пикселя (и возможно ли такое вообще), я не понимаю То есть, как я понял, в вектор 9×1 нам нужно занести только 9 пикселей из 64, это верно?
0
|
|
| 08.11.2020, 14:17 | |
|
Помогаю со студенческими работами здесь
5
Как вычислить цвет ячейки Excel Вычислить возраст по функции СЕГОДНЯ ГОД, применить фильтр. Построить сравнительную гистограмму Как вычислить значение для пустой ячейки дата грид вью Как сделать Гистограмму ?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|