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
[56865] Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중..
송득보 [syiware] 1014 읽음    2009-05-15 13:00
그럼 이렇게 하세요. 나도 원격접속 개발하느라 쓰는 알고리즘인데

이미지 압축해서 전송하시는건 IJL로 하시구요..이게 속도도 빠르고 좋습니다.

나같은 경우.. 원격 pc에 접속해서 마우스만 깔작거리는데 이미지 전체를 다 전송할 이유가 없잖아요.

바뀌는 부분만 전송해주면 되니까..

이전 프레임과 현재 캡쳐한 프레임 이렇게 비트맵이 a, b가 계속 버퍼에 있어야 하구요.

이미지 복사는 bitblt api를 쓰세요.

a(srccopy) 위에다 b(srcinvert)를 뒤집어 씌울 경우

같은 부분은 검게(0)이 되고.. 다른 부분만 컬러가 역상으로 됩니다.

이걸 압축하면 화면 전체를 압축해도 달라진 영역을 제외한 나머지는 0이니까 이미지 크기가 훨씬 작겠죠?

이 XOR된 이미지에 다시 b를 srcinvert로 한번 더 덮어주면 a화면이 b를 srccopy한 원본처럼 변합니다.

전송할땐 xor된 이미지를 전송해주면 되는거죠.

도움이 되셨기를..

-locke

이성제 님이 쓰신 글 :
: 달라진 이유를 찾는게,
: 이미지 전송을 하는데 쓸데없이 전체다 전송을 하는게 의미도 없고,
: 성능도 저하되는거 같아서여~
: 그래서 ScanLine 으로 rgb 가 달라진 부분을 찾아서 전송하고,
: 이렇게 하긴 했는데 이것보다 더 좋은 성능을 가진
: 방법을 찾고 있는거거든요. ㅎ
: 답변 감사합니다 ^^
:
:
:
: 송득보 님이 쓰신 글 :
: : 달라진 부분을 찾는 이유가 무엇인가요? 그 이유를 정확히 써주시면 도와드리는데 더 수월할듯 싶네요.
: :
: : -locke
: :
: : 이성제 님이 쓰신 글 :
: : : 혼자서 ScanLine으로 하나씩 다 검색 하고 달라진 부분을 찾아내고 있는데요.
: : :
: : : 문뜩 이것보다 좋은 방법이 있지 않을까해서 질문 올려봐요. ㅎ
: : :
: : : 두개의 bitmap에서 달라진 부분을 찾는 방법에는 어떠한 방법이 있나요?

+ -

관련 글 리스트
56859 이미지의 달라진 부분 찾아내는 방법 중.. 이성제 903 2009/05/15
56860     Re:이미지의 달라진 부분 찾아내는 방법 중.. 송득보 1115 2009/05/15
56862         Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 이성제 966 2009/05/15
56865             Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 송득보 1014 2009/05/15
56868                 Re:Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 송득보 1021 2009/05/15
56869                     Re:Re:Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 이성제 1156 2009/05/15
56883                         Re:Re:Re:Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 송득보 918 2009/05/16
56885                             Re:Re:Re:Re:Re:Re:Re:이미지의 달라진 부분 찾아내는 방법 중.. 이성제 1070 2009/05/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.