필터 지우기
필터 지우기

Problem with imresize function

조회 수: 4 (최근 30일)
Dani D
Dani D 2016년 2월 12일
답변: Image Analyst 2016년 2월 12일
Hello, I have problem with imresize :(
clear;
A=imread('dentist.jpg');
B=imread('gol.JPG');
imshow(A); pause(3);
imshow(B);pause(4);
B = imresize(A,size(B));
C = imadd(A,B);imshow(C);

채택된 답변

Image Analyst
Image Analyst 2016년 2월 12일
B is an RGB image, so size(B) is a 3 element array. When you pass in a 3 column vector or matrix into imresize, it expects it to be a colormap, not a size, and if it's a colormap it must be doubles in the range 0-1, not integers in the range of 0-thousands or whatever your size is.
You need to get the rows and columns by themselves. NEVER use size() like that on an image you read in with imread(). Why not? See this: http://blogs.mathworks.com/steve/2011/03/22/too-much-information-about-the-size-function/
The fix
[rowsB, columnsB, numberOfColorChannelsB] = size(B);
% Now resize A and overwrite the old B
B = imresize(A, [rows, columns]);

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Red에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by