opencv 실습에서, 가장 기초적인 부분인 imread와 imshow 함수를 사용해 봤다.
실습을 위해 opencv를 include 해준다.
#include <opencv2/opencv.hpp>
imread("fileName", flag)
: image + read
: 이미지를 읽고 불러옴
cv::Mat image = cv::imread("../test.jpg", 0);
- "fileName" = 불러올 이미지의 경로
- 프로젝트 폴더 안 (cmake를 쓰는 경우 build 폴더 안)에 있는 경우 -> 이미지 파일 이름만 입력해도 됨
- flag = 불러올 옵션 (대표 3가지)
- IMREAD_COLOR or 1 = 이미지의 색정보를 포함해 불러옴, Default 설정이므로 생략 가능
- IMREAD_GRAYSCALE or 0 = 이미지를 흑백으로 변환해 불러옴
- IMREAD_UNCHANGED or -1 = 이미지를 색성보에 알파채널까지 포함해 불러옴
imshow("windowName", image)
: image + show
: 이미지 보여주기
cv::imshow("Test Image", image);
cv::waitKey(0);
- "windowName" = 이미지를 보여줄 윈도우 창의 이름
- image = 보여줄 Mat 형식의 이미지 변수 이름
- waitKey(delay time)
- delay time : 키입력을 기다릴 시간 입력
- 위 시간만큼 코드가 멈추며 키입력이 감지되면 다음 코드 진행
- 0 -> 무한 시간 의미 / 키를 누르지 않는 이상 윈도우창이 계속 켜있음
코드
#include <opencv2/opencv.hpp>
#include <iostream>
int main() {
cv::Mat color_img = cv::imread("../test.png",cv::IMREAD_COLOR);
cv::Mat grayscale_img = cv::imread("../test.png", cv::IMREAD_GRAYSCALE);
cv::Mat unchanged_img = cv::imread("../test.png", cv::IMREAD_UNCHANGED);
cv::Mat reduced_img = cv::imread("../test.png", cv::IMREAD_REDUCED_COLOR_2);
cv::Mat reduced_grayscale_img = cv::imread("../test.png", cv::IMREAD_REDUCED_GRAYSCALE_4);
// cv::imshow("color_img", color_img);
// cv::imshow("grayscale_img", grayscale_img);
cv::imshow("unchanged_img", unchanged_img);
cv::imshow("reduced_img", reduced_img);
cv::imshow("reduced_grayscale_img", reduced_grayscale_img);
cv::waitKey(0);
return 0;
}
참고 블로그!
[C++ opencv] 이미지 불러오고 보여주는 방법, imread() imshow()
본문 목표 OpenCV에서 이미지를 읽고 화면에 보여주는 기능을 담당하는 imread() 와 imshow() 함수에 대해서 알아본다. 키워드 : imread( ), imshow( ) 알아볼 함수 원형 - 이미지 읽기 & 불러오기 ( Image Read, im
diyver.tistory.com
'비디오 코덱' 카테고리의 다른 글
흑백 이미지 처리의 효율 (1) | 2024.11.27 |
---|---|
컬러를 흑백으로 변환하기 : cvtColor() (0) | 2024.11.27 |
OpenCV란 (0) | 2024.11.27 |
Cmake에 대해 (1) | 2024.11.25 |
OpenCV 설치 및 Cmake 설정 (MacOs) (1) | 2024.11.25 |