2016-02-13 2 views
-1

Как инвертировать и обрезать изображение в Matlab без использования imcompliment() и imcrop() функций?Invert & cut изображения в Matlab

Есть ли алгоритмы для инвертирования и вырезания изображения?

+2

Этот вопрос не по теме .... по многим причинам. См. Следующую веб-страницу о том, как задать правильный вопрос: http://stackoverflow.com/help/how-to-ask – rayryeng

ответ

1

Во-первых, функция imcomplement() дает вам отрицательное изображение. Во-вторых, один способ обрезать и инвертировать изображение - это нарезка.

Давайте возьмем изображение:

img = ones(100,100);

Чтобы инвертировать изображение на 180 градусов вы можете использовать:

im_flipped = img(end:-1:1, :);

Чтобы инвертировать изображение (получить негативное изображение) вы можете использование:

ìm_neg = 255 - img;

Чтобы обрезать изображение, которое вы можете использовать:

im_cropped = img(20:50, 20:50);

+0

Ваше зеркало кода «инверсии» отражает изображение; он не находит комплимента. Вероятно, вы хотите сделать '255 - img', если тип изображения -' uint8'. – rayryeng

+0

Я должен изменить «инвертировать изображение» для «инвертировать изображение в 180 градусов»? –

+1

Да, это имело бы смысл. Вы также можете добавить, что я сказал об этом комплименте, и я проголосую за ваш ответ. – rayryeng

0

В MATLAB командной строке введите:

edit imcomplement.m 
edit imcrop.m 

Это позволит вам увидеть, как реализуются эти функции, и реализовать свои собственные.