Преобразование изображений PNG в пиксели векторов объектов с серым уровнем - PullRequest
1 голос
/ 26 октября 2011

Я новичок в MATLAB, и у меня есть набор изображений bmp, которые мне нужно преобразовать в пиксельные значения уровня серого в качестве векторов признаков изображения.Кто-нибудь может подсказать мне, как я могу это сделать?Мне нужно использовать эти значения уровня серого в пикселях как функции, а затем выполнять такие операции, как PCA / LDA.Я пробовал imread (), но он возвращает мне матрицу ... Я чувствую, что вектор объектов будет представлять собой только один вектор строки.

С уважением,

1 Ответ

1 голос
/ 26 октября 2011

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.

...