#image-processing #matlab #pattern-recognition #feature-extraction
#обработка изображений #matlab #распознавание шаблонов #извлечение объектов
Вопрос:
Я новичок в MATLAB, и у меня есть набор изображений bmp, которые мне нужно преобразовать в значения уровня серого в пикселях в качестве векторов объектов изображения. Может кто-нибудь подсказать мне, как я могу это сделать? Мне нужно использовать эти значения уровня серого в пикселях в качестве объектов, а затем выполнять операции, подобные PCA / LDA. Я попробовал imread (), но он возвращает мне матрицу.. Я чувствую, что вектор объектов будет всего одним вектором строки.
С уважением,
Ответ №1:
imread()
это правильный способ сделать это. Затем просто преобразуйте из матрицы в вектор. Например:
>> X = randi(255, 10)
X =
208 41 168 181 112 71 192 215 90 20
231 248 10 9 98 174 66 65 212 14
33 245 217 71 196 168 130 208 150 136
233 124 239 12 203 42 179 63 141 199
162 205 174 25 48 31 228 237 234 239
25 37 194 210 125 128 245 90 73 34
72 108 190 178 114 245 140 51 194 146
140 234 101 81 165 87 36 65 193 120
245 203 168 243 181 150 39 158 98 4
247 245 44 9 193 58 66 121 145 86
>> X(:)
ans =
208
231
33
233
162
25
72
140
245
247
...
Затем вы можете просто объединить свои различные наблюдения вместе []
и выполнить PCA.
Комментарии:
1. спасибо за быстрый ответ. Итак, что мне делать, если imread () возвращает матрицу 72x96x3, должен ли я использовать rgb2gray ()? и если да, то 72 * 96 равно 6912, поэтому каждый вектор объектов строки будет иметь значения столбцов 6912, это нормально?
2. Правильно. PCA в конечном итоге будет ограничен доступной памятью, но он должен работать с таким количеством функций.
3. Кстати, вместо того, чтобы просто использовать все необработанные пиксельные данные, если вы хотите заглянуть в поле компьютерного зрения, есть много других интересных способов извлечения объектов из изображений. Удачи!
4. Это далеко от моей области знаний, но, например, ознакомьтесь с этим набором данных в превосходной базе данных UCI ML: archive.ics.uci.edu/ml/datasets/Corel Image Features
5. Кроме того, если вы заинтересованы в каком-либо обнаружении геометрических объектов, просто начните поиск в Google «распознавание лиц», и вы получите массу примеров.