Изменить размер изображения Matlab - PullRequest
0 голосов
/ 28 апреля 2011

Я хочу изменить размер изображения, но при изменении размера он должен сохранять соотношение высоты и ширины. Что я делаю, так это сначала проверяю, какая сторона (ширина или высота) длинная. Если ширина длинная, я добавлю 150 к ширине и изменим ее высоту, не влияя на форму изображения, и наоборот. Я говорю об этом измененном изображении для алгоритма обнаружения края, и выходное двоичное изображение отправляется в нейронную сеть, которая требует постоянного числа входов. В этом случае одна сторона (ширина или высота) изображения равна 150, а другая сторона меньше 150 (варьируется от изображения к изображению). Но я хочу добавить черный цвет на другую сторону (менее 150), пока его размер не станет 150. Итак, я могу отправить 150 * 150 входов в нейронную сеть. Вопрос: Как я могу добавить черный цвет на другую сторону (меньше 150), пока его размер не станет 150?

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 28 апреля 2011

http://www.mathworks.com/help/toolbox/images/ref/imresize.html http://www.mathworks.com/help/toolbox/images/ref/padarray.html

newim = imresize(im, 150 / max(size(im));
paddedim = padarray(newim, size(newim) - 150, 0);
0 голосов
/ 28 апреля 2011

Создает матрицу нулей.Рассчитайте положение верхнего левого пикселя.Затем скопируйте свое изображение в эту матрицу, нарезав ее из левого верхнего пикселя.

...