C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[59295] Re:Re:Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상
나그네 [] 2137 읽음    2009-12-02 16:17
mister 님이 쓰신 글 :
: cc1232 님이 쓰신 글 :
: : pImage에 있는 포맷이 YUV인 상태로 보입니다
: : 그 포맷에다가 BMP헤더만 붙인다고 BMP가 되지는 않습니다
: : YUV를 BMP RAW로 변환하시고, 헤더를 붙여야 할 것 같네요
: :
: : mister 님이 쓰신 글 :
: : : 캡쳐보드에서 YUY2 이미지를 받아서 bmp 포멧으로 바꿔 쓰려 합니다.
: : : 비트맵 파일로 바꾸면 화면이 깨지네요.
: : :
: : : 소스는 다음과 같습니다.
: : : 무엇이 문제인지 알려주십시요;;
: : : //////////////////////////////////////////////////////////////////////////////////////////////////
: : : // 콜백 함수 내용 입니다.
: : :             BITMAPFILEHEADER bmfh;
: : :             BITMAPINFOHEADER bmih;
: : :
: : :             ZeroMemory(&bmfh, sizeof(bmfh));
: : :             ZeroMemory(&bmih, sizeof(bmih));
: : :
: : :             bmfh.bfType =  0x4d42;    // 'BM'   
: : :             bmfh.bfSize = (sizeof(BITMAPFILEHEADER) - 2) + sizeof(BITMAPINFOHEADER) + 
: : :                                        (sizeX * sizeY * 2);               //360x240
: : :             bmfh.bfReserved1 = 0;
: : :             bmfh.bfReserved2 = 0;
: : :
: : :             bmfh.bfOffBits = (sizeof(BITMAPFILEHEADER) - 2) + sizeof(BITMAPINFOHEADER) ;
: : : 
: : :             bmih.biSize=sizeof(BITMAPINFOHEADER);
: : :             bmih.biWidth=sizeX;
: : :             bmih.biHeight=sizeY;
: : :             bmih.biPlanes=1;
: : :             bmih.biBitCount=16;
: : :             bmih.biCompression=0;
: : :             bmih.biSizeImage=sizeX*sizeY*2;
: : :             bmih.biXPelsPerMeter=0;
: : :             bmih.biYPelsPerMeter=0;
: : :             bmih.biClrUsed=0;
: : :             bmih.biClrImportant=0;
: : :
: : :             TMemoryStream *pMemoryStream = new TMemoryStream();
: : :             pMemoryStream->WriteBuffer(&bmfh, sizeof(BITMAPFILEHEADER) - 2);
: : :             pMemoryStream->WriteBuffer(&bmih, sizeof(bmih));
: : :                                                               //pImage 이미지 소스
: : :             pMemoryStream->WriteBuffer((BYTE*) pImage, bmih.biSizeImage);
: : :             pMemoryStream->Position = 0;
: : :             Image1->Picture->Bitmap->LoadFromStream(pMemoryStream);
: : :
: : :             delete   pMemoryStream;
:
: 아 BMP RAW란 것이 지금 YUV2를 RGB로 바꾸라는 것 인가요?
: 아님 이렇게 바뀐 포멧을 다시 RAW로 바꾸고 BMP로 바꾸라는 건가요??
: 또 아님 BMP  RAW라는 포멧이 있나요?

헤더 정보 이상함.
        BITMAPINFOHEADER bmiHeader;
        bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
        bmiHeader.biWidth = m_iWidth;
        bmiHeader.biHeight = m_iHeight;
        bmiHeader.biPlanes = 1;
        bmiHeader.biBitCount = 24;
        bmiHeader.biCompression = BI_RGB;
        bmiHeader.biSizeImage = 0;
        bmiHeader.biXPelsPerMeter = 0;
        bmiHeader.biYPelsPerMeter = 0;
        bmiHeader.biClrUsed = 0;
        bmiHeader.biClrImportant = 0;

+ -

관련 글 리스트
52751 캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 mister 1550 2008/03/18
52765     Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 방태윤 4911 2008/03/18
52767         Re:Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 mister 3024 2008/03/19
52752     Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 cc1232 1851 2008/03/18
52755         Re:Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 mister 2207 2008/03/18
59295             Re:Re:Re:캠에서 받은 RAW(yuy2 ) 이미지를 bmp로 전환시 깨짐 현상 나그네 2137 2009/12/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.