2017-03-28 10 views
0

이미지 오버레이를 만드는 방법은 무엇입니까? 가장자리 변경 색상 : 가장자리를 녹색으로 변경하려면 먼저 'sobel'을 사용했지만 오버레이 부분에는 오류가 있습니다. "IMG는 회색 음영 또는 RGB 이미지 배열이어야합니다. writeVideo (writer, double (out)); " 왜?이미지 오버레이를 만드는 방법은 무엇입니까? 가장자리 모서리 색상 변경

out_red(BW)=0; 
    out_green(BW)=255; 
    out_blue(BW)=0; 


    writeVideo(writer,double(uint8(out))); 


close(writer); 

답변

1

각 색상 채널로 전체 IMG, 그것은 대신 같아야 실수로 설정 : "IMG가되어야합니다

out_red=img(:,:,1); 
out_green=img(:,:,2); 
out_blue=img(:,:,3); 

과 끝을 수행하여 writeVideo(writer, uint8(out));

0

다음을 시도

redChannel = inputImage(:, :, 1); 
greenChannel = inputImage(:, :, 2); 
blueChannel = inputImage(:, :, 3); 
writeVideo(writer, uint8(out)); 

writeVideo 클래스의 범위 인 경우 데이터 uint8 것으로 예상 {0, 1, 2, ..., 255}.
single 또는 double 데이터를 사용하려면 [0, 1] 범위로 다시 스케일링해야합니다.

+0

을 너무 오류가 있습니다 그레이 스케일 또는 RGB 이미지의 배열 "이 시도했다 :"writeVideo (writer, double (uint8 (out))); " 그러나 여전히 오류가 있습니다. "IMG는 회색 음영 또는 RGB 이미지의 배열이어야합니다." 왜? – hme

+0

전체 코드를 공유하십시오. – Royi

+0

코드를 공유했습니다. – hme