일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- pytorch zero to all
- 파이토치 강의 정리
- MFC 프로그래밍
- 영상처리
- Pytorch Lecture
- pytorch
- 모두의 딥러닝
- 딥러닝
- c언어 정리
- c언어
- tensorflow 예제
- 컴퓨터 비전
- 딥러닝 공부
- C언어 공부
- 해리스 코너 검출
- TensorFlow
- 파이토치
- 골빈해커
- 파이토치 김성훈 교수님 강의 정리
- object detection
- 팀프로젝트
- 모두의 딥러닝 예제
- 케라스 정리
- 김성훈 교수님 PyTorch
- 미디언 필터링
- 가우시안 필터링
- c++
- matlab 영상처리
- 딥러닝 스터디
- c++공부
- Today
- Total
ComputerVision Jack
[이미지 - Perspective Transform] 본문
영상에 대해 Perspective Transform을 적용하고 싶은 영역의 4점을 찍고,
목적 영상에 4점을 찍으면 그 점으로 Transform이 적용된다. 또한 영상에대한 잡음제거도 적용된다.
[Perspective Transform]
buff = imread("../_res/card_noise.jpg", IMREAD_GRAYSCALE);
#효과를 적용할 이미지를 읽어온다.
dst = Mat::zeros(buff.size(), CV_8UC3);
#읽어온 이미지 크기 만큼, 결과 영상을 출력할 Mat객체를 생성한다.
setMouseCallback("buff", on_mouse);
#마우스 연산이 필요하기 때문에 mousecallback 시스템 함수를 생성한다.
void on_mouse(int event, int x, int y, int flags, void*) {
static int cnt = 0;
if (event == EVENT_LBUTTONDOWN) {
if (cnt < 4) {
srcQuad[cnt++] = Point2f(x, y);
circle(buff, Point(x, y), 5, Scalar(0, 0, 255), -1);
imshow("buff", buff);
}
}
}
#static으로 cnt를 설정해 콜백 함수가 호출될 때 마다 그 값을 누적할 수 있게 한다.
cnt갯수를 체크하면서 클릭된 값을 Point2f 벡터어 넣는다.
bilateralFilter(buff, src, -1, 35, 20);
#잡음제거 하기위한 filter.
setMouseCallback("dst", on_result);
#이번엔 결과 영상 윈도우에 적용될 mousecallback함수를 설정한다.
void on_result(int event, int x, int y, int flags, void*) {
static int result = 0;
if (event == EVENT_LBUTTONDOWN) {
if (result < 4) {
dstQuad[result++] = Point2f(x, y);
circle(dst, Point(x, y), 5, Scalar(0, 0, 255), -1);
imshow("dst", dst);
if (result == 4) {
Mat pers = getPerspectiveTransform(srcQuad, dstQuad);
warpPerspective(src, dst, pers, src.size());
imshow("dst", dst);
}
}
}
}
#on_Mouse()함수와 똑같이 작성을 하되, result점이 4개 이상 찍힐 경우, 그점에 대해 transform을 적용한다.
'Campus Project > Homework' 카테고리의 다른 글
[머신러닝 - 2차원 2클래스 분류] (0) | 2020.01.21 |
---|---|
[게임 - snake game] (2) | 2020.01.21 |
[컴퓨터 비전 - Face Detect] (0) | 2020.01.20 |
[이미지 - 필터링 적용] (1) | 2020.01.17 |
[이미지 - 동전 검출] (1) | 2020.01.16 |