본문 바로가기
혤로그 이전의 기록/프로젝트 일지

[MATLAB/영상처리] 디스플레이 함수 : image, imshow

by hyelllllog 2020. 9. 30.
수기로 정리하기 귀찮아서 타이핑하기....ㅎㅎ

<< image 함수 >>

; 단순히 매트릭스를 영상으로 디스플레이

 

##문제점##

1. 영상이 늘어지는 현상이 발생할 수 있음
--> truesize 추가  

 

2. 컬러 혼합이 이상할 수 있음
-> 영상을 jet (default colormap)으로 디스플레이 했기 때문 
--> colormap(colormap name) 추가 

 

 

!! 다양한 디스플레이를 위해 사용하기엔 복잡함 !!

<< imshow 함수 >>

; uint8형인 경우, 매트릭스(0~255)의 밝기 값 영상으로 디스플레이 

double형인 경우, 매트릭스(0~1)의 밝기 값 영상으로 디스플레이

 

  • 문제점

double형인 경우, 0~1의 밝기 값으로 디스플레이 하기 때문에

1보다 큰 값은 전부 1로 인식 (ex> 180 -> 1 , 255 -> 1)

--> imshow(cd/255) : 0~1 밝기 값으로 변경 

--> imshow(cd,[0 255]) : 0~255의 밝기로 디스플레이 

--> cd=im2double(cd) : 0~1의 밝기 값으로 변경

 

 

  • 영상별 자료형

- RGB 영상 

0~1사이의 double형 매트릭스 

 

- 2진 영상 

0 또는 1인 logical형 매트릭스 

                                            +> 2진영상으로 변환하기 

                                                c = imread(' ');

                                                c1 = c > 120 ;     //밝기 값의 조건에 따른 논리 매트릭스 

 

                                            +> 2진영상을 다른 자료형 으로 변환하기 

                                                c2 += c1;    //double 형

                                                c3 =uint8(c2)   //uint8  -> ※주의※ 값이 0~1->uint8에서는 블랙으로 디스플레이