DevKim

[영상처리] MATLAB 데이터 타입 변환과 영상파일,포맷, Bayer filter & Demosaicing 본문

영상처리

[영상처리] MATLAB 데이터 타입 변환과 영상파일,포맷, Bayer filter & Demosaicing

on_doing 2020. 9. 20. 13:06
728x90

1. 데이터 타입과 변환

 

-MATLAB 에서는 기본 데이터가 double형 array

 

* unit8 --> 양의정수형 + 8 bit (0~255)

 

 

* int8,int16,uint8,uint16 인 데이터는 산술연산이 원활하게 수행되지 않을 수 있음

 

왜?

 

 

*a는 기본 double 형 , buint8 형이라고 할때

b의 범위는 0-255까지만 표현하므로 연산 중 소수점이 생기면 반올림을 하고, 음수는 모두 0으로 처리하고 , 255보다 큰 값이 나오면 모조리 255를 출력함.

 

*이 후 인덱스 컬러영상은 모두 RGB영상으로 변환되었다고 가정할 것 임

 

 


2. 영상파일과 포맷

 

 


3. 영상 저장 :imwrite

 

imwrite(영상,map[컬러맵이 있을 경우에만 씀] ,'저장할 이름')


4. Bayer Filter & Demosaicing

 


<Bayer 필터로 얻어진 부분>

I=imread('bayer.jpg'); # bayer 필터에 통과한 컬러 이미지
figure,imshow(I);

위의 초록색 네모칸을 보면 하늘 부분 중 하나를 가져왔다.

그 아래와 같이 색이 설정되어 있을때, Blue 부분이 255에 가까운 것을 알 수 있다. 파란색 빛을 가진 파장대만 통과하였음을 알 수 있고, 이 부분은 파란색 대부분과 초록색 조금, 빨간색 거의 없음을 알 수 있다.

 


 

<Demosaicing 수행 후>

 

J=demosaic(I,'rggb'); #rggb 패턴은 달라질 수 있다.
figure,imshow(J);

728x90
Comments