3D keypoints 시각화 해보기
·
컴퓨터 비전
HumanSC3D 데이터셋에서 라벨로 주어지는 3D keypoints들을 이미지에 시각화 해보자.   3D keypoints 분석HumanSC3D는 25개의 keypoint를 쓴다. 다른 keypoint데이터셋은 17개만 쓴다. 왼쪽, 오른쪽 손과 왼쪽 오른쪽 발 각각에 대해 2개씩의 keypoint들을 더 둔다.- 추가된 keypoint가 뭔지는 잘 모르겠다. 따라서 기존 17개의 keypoint에 8개의 keypoint가 더 들어가서 총 25개가 된다.    Keypoint마다 3차원 좌표를 가지고, 동영상의 각 프레임마다 keypoint들을 가진다. 라벨의 keypoint들을 텐서로 변환했을때 shape은 동영상의 총 프레임 개수를 F라고 하면, (F, 25, 3) 이 된다.    이걸 그대로 3차..
Camera calibration
·
컴퓨터 비전
서론HumanSC3D 데이터셋에서 3차원 좌표를 시각화 해보던 중, camera parameter라는게 있어서 뭔지 알아보게됐다. 이것들이 뭔지 알아보도록 하자.  참고https://velog.io/@landsky1234/Camera-Parameters Camera ParametersIntrinsic / Extrinsic parametersvelog.iohttps://darkpgmr.tistory.com/32 카메라 캘리브레이션 (Camera Calibration)카메라 캘리브레이션 (camera calibration)은 영상처리, 컴퓨터 비전 분야에서 번거롭지만 꼭 필요한 과정중의 하나입니다. 본 포스팅에서는 카메라 캘리브레이션의 개념, 카메라 내부 파라미터, 외darkpgmr.tistory.comht..
[컴퓨터 비전] Histogram Equalization
·
컴퓨터 비전
서론이미지는 때때로 대비(contrast)가 낮다.위와같은 이미지의 경우 픽셀 값의 빈도수를 히스토그램으로 나타내면 다음과 같은데0~50과 100~200 사이의 값들이 빈도가 많다는 것을 알 수 있다. 이와같은 이미지의 대비를 높이기 위해서 histogram stretching(특정 구간을 1차 함수를 통해 늘리는 것)을 통해 개선할 수 있다. 하지만 stretching 방법은 특정 구간을 매번 잡아줘야하는 귀찮음이 크다. 0~50을 0~200으로 늘려준 후, 다시 늘려야하는 구간이 보일 수밖에 없으므로 또 다시 늘려주고.. 이걸 알고리즘으로 만들어볼 수도 있겠지만 상당히 귀찮은 작업이 아닐 수 없다. 이제 이를 한번에 해결해줄 equalization 방법을 소개하고자 한다.          Histog..
[컴퓨터 비전] 이미지 변환(2) - Bilinear Interpolation
·
컴퓨터 비전
이미지는 픽셀 단위로 이루어진 데이터이다. 픽셀 단위라는 것은 색깔을 가진 블록들을 하나하나 붙여서 만들었다는 것을 의미한다. 우리가 보는 휴대폰의 이미지나, 모니터의 이미지들 모두 픽셀로 이루어져 있으므로 자세히 들여다보면 무수한 정사각형들의 집합임을 알 수 있다. 하지만 현실의 물체들은 모두 연속적인 데이터이다. 픽셀처럼 딱 떨어지는 위치가 없다. 여기면 여기 저기면 저기, 어떤 기준점을 바탕으로 정확한 수치만큼 떨어져있다고 말하기 어렵다.      그림을 키워보자생각해보자. 우리가 가진 고양이 사진이 있는데, 좀 크게 키워서 보고싶다. 고양이 사진은 높이가 640픽셀 너비가 480 픽셀이라고 하자. 우선 틀을 만들어야하므로 무작정 이미지의 높이를 2배하고 너비를 2배한 틀을 만들었다. 고양이 사진은..
[컴퓨터 비전] 이미지 변환(1)
·
컴퓨터 비전
아무래도 이미지를 다루니까 이미지에 대해 설명하지 않을 수 없다. 이미지는 픽셀들의 집합이고, 각 픽셀들은 색을 가지고 있다. 모든 색은 빨강, 초록, 파랑의 적절한 조화로 만들 수 있음을 알고있는가? 몰랐다면 알아두자. 모든 색은 빨강, 초록, 파랑을 적절히 섞어 만들 수 있다. 따라서 하나의 픽셀은 빨강, 초록, 파랑 3개로 나누어서 볼 수 있다. 이렇게 나누면 각각의 색깔은 하나의 숫자로 표현이 된다. 이 숫자는 0~255사이의 숫자로 255에 가까울수록 밝아지고, 0에 가까울수록 어두워진다. 즉, 각각의 숫자 자체는 밝기를 나타낸다. 앞으로 사용할 이미지들은 데이터 타입이 numpy.uint8 이다. 따라서 값이 uint8 범위를 넘어가버리면 오버플로우가 일어나서 이미지가 비정상적으로 변할 수 있..