2014-12-09 9 views
-3

두 이미지를 고려하십시오. 이 두 이미지의 크기는 아무 것도 될 수 있습니다. 이 두 이미지의 크기를 동일하게 가져옵니다. 이 두 이미지를 혼합하는 알고리즘을 개발하여 대체 픽셀을 두 이미지 과정에서 가져옵니다. 그것은 두 이미지의 융합입니다. 예를 들어, 픽셀 1은 이미지 1, 픽셀 2는 이미지 2, 픽셀 3는 이미지 1 등등 ......matlab에 두 이미지 융합

+0

왜이 작업을 원하십니까? –

답변

1

저는 Matlab을 사용하는 것을 선호하지만 누군가가 당신에게 Matlab 응답을 제공하기 전까지는 당신을 위해 이것을 할 수있는 ImageMagick으로 놀고 싶어하며 어쨌든 대부분의 리눅스 배포판에 있으며 Windows 및 Mac OSX에서 무료로 사용할 수 있습니다. 당신이 대괄호 안에 이미지 크기 후를 지정하여 그것들을 읽어대로 이미지 크기를 조정할 수 있습니다, 기본적으로

convert -size 300x300 xc:blue image1.png 
convert -size 200x400 xc:red image2.png 

enter image description here enter image description here

:

먼저, 2 개 개의 다른 크기의 이미지와 색상을 만들 수 있습니다 파일 이름은 256x256 픽셀로 두 이미지의 크기를 임의로 조정합니다.

convert image1.png[256x256] image2.png[256x256] -fx "i%2?u:v" out.png 
여기

enter image description here

0

가있다 : 다음은 상기 제 1 또는 그에 번째 이미지에서 하나 I 홀수 또는 짝수의 픽셀을 처리하고 있는지 검색하고, 선택은 매우 강력 fx 연산자를 사용 MATLAB을 사용하는 방법.

clear 
clc 

%// Initialize red and blueimages 
RedImage = zeros(300,300,3,'uint8'); 
BlueImage = zeros(200,400,3,'uint8'); 

%// Color them 
RedImage(:,:,1) = 255; 
BlueImage(:,:,3) = 255; 

figure('Color',[1 1 1]); 

%// Show them 
subplot(1,2,1) 
imshow(RedImage) 
subplot(1,2,2) 
imshow(BlueImage) 

그것은 다음과 같습니다

enter image description here

어두워 보이지만 그림이 작동 중임을 보여줍니다 크기 조정 :

enter image description here

%// Resize them to same size 
RedImage = imresize(RedImage,[256 256]); 
BlueImage = imresize(BlueImage,[256 256]); 

%// Initialize new image 
NewImage = zeros(256,256,3,'uint8'); 

%// Assign alternate pixels to new images 
NewImage(1:2:end,1:2:end,:) = RedImage(1:2:end,1:2:end,:); 
NewImage(2:2:end,2:2:end,:) = BlueImage(2:2:end,2:2:end,:); 

figure 
imshow(NewImage) 

이 출력한다 과연!

희망 하시겠습니까? 재미있게 보내십시오.