Преобразование двоичных изображений в одномерный векторный Python - PullRequest
0 голосов
/ 09 мая 2018

Я работаю над проектом обработки изображений и я начинающий в Python. Буду признателен за любую помощь. Я пытаюсь преобразовать код Matlab в Python. Ниже мой код Matlab-

file_name='play.png';
message=double(imread(file_name));
Mm=size(message,1);                         %Height
Nm=size(message,2);                         %Width
message_vector=round(reshape(message,1200,1)./256);
disp(message_vector)

Вывод кода Matlab

Ниже приведен код Python

water = cv2.imread('sam.png')
gray_image = cv2.cvtColor(water, cv2.COLOR_BGR2GRAY)
file_name=im2double(gray_image)
a=np.shape(gray_image)
b=a[0]*a[1]#getting resolution
images_rs = gray_image.reshape([b, 1])#reshaping array into 1D vector
print(images_rs)

Выход Python

Я хочу вывод, как то, что я получаю для кода Matlab с 1 и 0. Как я могу получить это? Где я допустил ошибку в Python, поскольку ответ в Python не совпадает с Matlab?

1 Ответ

0 голосов
/ 09 мая 2018

Вы не нормализовали значения в python после изменения формы.Обновление images_rs = gray_image.reshape([b, 1]) до images_rs = gray_image.reshape([b, 1])/256. должно дать то, что вы ищете.

...