• 7행 입력 영상을 저장할 변수 src를 전역 변수로 선언합니다.
• 8행 입력 영상과 출력 영상에서의 네 점 좌표를 저장할 srcQuad와 dstQuad 배열을 선언합니다.
• 21~22행 “src” 창을 미리 생성한 후, “src” 창에 마우스 콜백 함수를 등록합니다.
• 32행 cnt는 마우스 왼쪽 버튼이 눌린 횟수를 저장하는 변수입니다.
• 34행 마우스 이벤트 중에서 마우스 왼쪽 버튼이 눌려지는 이벤트에 대해서만 처리합니다.
• 36행 “src” 창에서 마우스 왼쪽 버튼을 눌려진 좌표를 srcQuad 배열에 저장합니다. 그리고 cnt 값을 1만큼 증가시킵니다.
• 38행 마우스 왼쪽 버튼이 눌려진 위치에 반지름이 5인 빨간색 원을 그립니다.
• 41행 마우스 왼쪽 버튼이 네 번 눌러지면 if 문 블록을 수행합니다.
• 42행 투시 변환하여 만들 결과 영상의 가로와 세로 크기를 w와 h 변수에 저장합니다.
• 44~47행 “src” 창에서 사용자가 마우스로 선택한 사각형 꼭지점이 이동할 결과 영상 좌표를 설정합니다.
• 49행 3×3 투시 변환 행렬을 pers 변수에 저장합니다.
• 51~52행 투시 변환을 수행하여 w×h 크기의 결과 영상 dst를 생성합니다.