BMP to YUV converter(YUV420, YUV422)
- 최초 등록일
- 2010.08.24
- 최종 저작일
- 2009.11
- 4페이지/ 한컴오피스
- 가격 3,000원
소개글
BMP to YUV converter(YUV420, YUV422)
목차
BMP to YUV converter(YUV420, YUV422) source code
Input BMP file
YUV420 output display
YUV422 output display
본문내용
unsigned char u420[256*64], v420[256*64], u422[256*128], v422[256*128];
// YUV420, YUV422에 사용 되는 U,V 배열 선언
...
int i=0; // 변수 i 선언과 동시에 초기 값 0 선언
int j;
else if (mode==YUV420) { // RGB to YUV420 Conversion
for(j=0; j<256*256*3; j+=3) // RGB 파일은 뒤집혀 저장 되어 있기 때문에 행렬의 마지막 부분부터 출력
y[j/3]=(unsigned char)(62.481/255*in_img[256*256*3-j-1]+128.553/255*in_img[256*256*3-j-2]+24.966/255*in_img[256*256*3-j-3])+16;
u[j/3]=(unsigned char)(-37.797/255*in_img[256*256*3-j-1]-74.203/255*in_img[256*256*3-j-2]+112.000/255*in_img[256*256*3-j-3])+128;
v[j/3]=(unsigned char)(112.000/255*in_img[256*256*3-j-1]-93.786/255*in_img[256*256*3-j-2]-18.214/255*in_img[256*256*3-j-3])+128;
// Subsampling of U & V
for (j=0; j<256*256; j++) {
if((j%2==0)&&(j%512<256)) { // 홀수 행의 홀수 번째 열과 다음 행의 같은 열값일 때 조건문 만족
u420[i]=(u[j]+u[j+256])/2; // 홀수 번째 열의 위아래 두 u값을 평균을 u420배열에 저장
v420[i]=(v[j]+v[j+256])/2; // 홀수 번째 열의 위아래 두 v값을 평균을 v420배열에 저장
i++;
}
}
참고 자료
없음