상위 목록: 하위 목록: 작성 날짜: 읽는 데 7 분 소요

크기 조절

영상이나 이미지의 크기를 원하는 크기로 조절할 수 있습니다.

이미지를 확대하는 경우에는 픽셀에 대한 보간법, 이미지를 축소하는 경우에는 픽셀에 대한 병합법이 수행됩니다.

이미지의 크기는 절대 크기상대 크기로 조절할 수 있습니다.



메인 코드

using System;
using OpenCvSharp;

namespace Project
{
    class Program
    {
        static void Main(string[] args)
        {
            Mat src = new Mat("plane.png");
            Mat dst = new Mat();

            Cv2.Resize(src, dst, new Size(500, 250));

            Cv2.ImShow("src", src);
            Cv2.ImShow("dst", dst);
            Cv2.WaitKey(0);
        }
    }
}


세부 코드

Mat src = new Mat("plane.png");
Mat dst = new Mat();

new Mat을 사용해 이미지를 src에 할당합니다.

dst는 크기가 조절된 이미지를 저장할 변수입니다.


Cv2.Resize(src, dst, new Size(500, 250));

크기 조절 함수(Cv2.Resize)를 활용해 이미지를 변환합니다.

Cv2.Resize*(원본 이미지, 결과 이미지, 절대 크기, 상대 크기(X), 상대 크기(Y), 보간법)으로 이미지 크기를 변환합니다.

이미지의 크기를 조절할 때, 절대 크기 또는 상대 크기를 사용해 이미지의 크기를 조절합니다.

절대 크기Size 구조체로 크기를 설정할 수 있습니다.

절대 크기필수 매개변수이며, 상대 크기선택(옵션) 매개변수입니다.

그러므로, 상대 크기로 할당할 경우, 다음과 같이 사용할 수 있습니다.


Cv2.Resize(src, dst, new Size(0, 0), 0.5, 0.5);

절대 크기Size 구조체의 값 중 하나 이상은 0의 값을 사용해야 상대 크기의 값으로 인식됩니다.

보간법은 기본값으로 쌍 선형 보간법으로 할당돼 있습니다.

보간법은 테두리 외삽법과 같은 속성을 갖습니다.



보간법 종류

속성 의미
InterpolationFlags.Nearest 가장 가까운 이웃 보간법
InterpolationFlags.Linear 쌍 선형 보간법
InterpolationFlags.Area 영역 보간법
InterpolationFlags.Cubic 4×4 바이 큐빅 보간법
InterpolationFlags.Lanczos4 8×8 란초스 보간법



출력 결과

댓글 남기기