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
[59193] Re:Re:Re:[질문] 내게 맞는 CODEC 코덱은?
땅주인 [heaven2] 1196 읽음    2009-11-22 21:45
답변 감사합니다.
한번 Try 해보고.. 결과를 올리지요.
감사합니다.

Lyn 님이 쓰신 글 :
: 오우 한글로 써놓으니 왠지 더 어렵네요 ㅡ.ㅡ;;
: 혹시나 해서 참고로 씁니다
:
: 최접근 이웃 보간 -> Nearest
: 양선영 보간 -> Bilinear
: 고등차수 보간 -> Bicubic
:
: 그외보간법
:
: 스플라인 보간법 Spline
: 삼선형 보간법 Trilinear
: Lanczos(모라고 읽는지 모르겠음 =_=);
:
:
: 근데 제 기억으론 CxImage 에 보간기능이 이미 있지않음?
:
: 장성호 님이 쓰신 글 :
: : window환경은 아닌가 보죠?
: :
: : window환경이라면
: : 그냥  StretchBlt통해 확대하고
: : StretchBlt 함수 호출전에 SetStretchBltMode(HALFTONE); 해놓구 하면 비교적 부드럽게 확대 축소 됩니다.
: : TImage에서 StrectDraw에 이방식을 씁니다.
: :
: : window환경이 아니면..
: : 직접 보정 알고리즘을 써야 하는데요...
: :   최접근 이웃 보간이나 양선영보간 등이 있습ㄴ디ㅏ.
: :   최접근 이웃 보간
: :    은 원본 위치에서 가장 가까운 위치에 값으 가져와서 대입합니다.
: :    
: :    어떤 이미지를 2.5 배 확대한다고 할때
: :  
: :     확대한 이미지 (x,y) 의 값은  ( x / 2.5 , y/2.5 )
: : 
  
: :      func(x,y)
: :      NewImage(X,Y ) = OriginalImage ( RoundTo(x /2.5,-1) ) , RoundTo( y / 2.5 , -1 ) ) ; 이 되는거죠
: :   

: :      RoundTo(xxx, -1 ) 은 소숫점 1자리에서 반올림 하는것입니다.
: :
: :      저 func(x,y) 를 확대한 이미지의 모든 pixcel에 대해 루트 돌리면 되죠
: :
: :    근데 저방식은 별루예요
: :
: :  양선영 보간    
: :     양선영 보간은 가장 가까운 pixcel을 값을 가져오지 않고
: :     주변 4 픽셀 또는 그이상의 값을 가지고 가중치를 두어서 더하여 가져옵니다.
: :   
: :  
: :     float fX,fY
: :     fX = X / 2.5 ;
: :     fY = Y / 2.5 ;  
: :     int iX=fX;
: :     int iY=fY;
: :     float fdX=fX-iX;
: :     float fdY=fY-iY;
: : 
: :     NewImage(X,Y) =OriginalImage(iY,iX)*(( 1-fdX)*(1-fdY)) \
: :              + OriginalImage(iY,iX+1]*(( 1-fdX)*fdY)   \
: :              + OriginalImage((iY+1),+iX+1)*(fdX*fdY)    \
: :              + OriginalImage((iY+1),+iX)*(fdX*(1-fdY));
: : 
   
: :
: :    이런식으로..
: :   
: :    그밖에도 다른 방법들이 많이 있을것입니다.
: :
: : 그럼..
: :
: :
: :
: :
: : 땅주인 님이 쓰신 글 :
: : : 차량용 DVR을 제작중입니다.
: : : 영상 인코딩은 H.264를 사용하구요..
: : : 뷰어에서.. H.264로 인코딩된 스트림을 PixTree Codec를 이용해서
: : : RGB포멧으로 뽑아냅니다. 그것을 Bitmap으로 변환해서 .. 화면 사이즈에 맞게 출력을 하는데..
: : :
: : : 문제는, Bitmap으로 변환 한 후에 화면 사이즈에 맞게 확대해서 출력하니 (CxImage 라이브러리 사용합니다),
: : : Bitmap 확대할 때 생기는 계단 현상이 보여 화질이 좋지 않습니다. 시장에
: : : 내놓았다가는 쪽박차기 딱이죠..
: : :
: : : 그래서, 새로운 코덱을 찾고 있는데요..
: : : H.264를 지원하고 화면 사이즈를 지정하면 그거에 맞게 알아서 영상 디코딩해서
: : : 고화질로 영상을 만들어 주는 Codec이 필요합니다.
: : :
: : : 아니면, Bitmap으로 뽑아서, DirectShow의 화질보정해주는 필터(아직 어떤 건 지 모름)가
: : : 있다면 이를 이용해서 구현해 보고도 싶습니다.
: : :
: : : 이도저도 아니면, 비트뱁 영상을 확대할 때 영상을 보정해주는 라이브러리가 있는 지?
: : : 우쨌거나 원 소스의 화질을 보정해 줄 수 있는 어떤 뭉툭한 방법이 필요합니다.
: : : 조언을 좀...
: : :
: : : 이런 상황에서 어떻게 해야 할 지 ... 고수님들의 의견 바랍니다.
: : :
: : : 감사합니다.

+ -

관련 글 리스트
59182 [질문] 내게 맞는 CODEC 코덱은? 땅주인 1093 2009/11/20
59183     Re:[질문] 내게 맞는 CODEC 코덱은? 장성호 1034 2009/11/20
59193             Re:Re:Re:[질문] 내게 맞는 CODEC 코덱은? 땅주인 1196 2009/11/22
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.