C# OpenCV 강좌 : 제 9강 - 크키 조절

C# OpenCV4 Resize

C# OpenCV 강좌 : 제 9강 - 크키 조절
[ C#-OpenCvSharp4 ] - 윤대희

크기 조절


1

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

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

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



Main Code


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);
        }
    }
}



Detailed Code


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 란초스 보간법



Result


2


도움이 되셨다면 광고 클릭 부탁드립니다.


Book Image

책이 출간되었습니다!

C#과 파이썬을 활용한 OpenCV 4 프로그래밍

컴퓨터 비전 기초 이론부터 머신러닝을 활용한 영상 처리 프로젝트까지

  • C# OpenCvSharp4
  • Python OpenCV4
  • Using Tesseract
  • Using TensorFlow
  • Using Regular Expression
  • 윤대희 저 | 위키북스

    [yes24 바로가기] [알라딘 바로가기] [교보문고 바로가기]


    ⤧  Previous post C# OpenCV 강좌 : 제 8강 - 확대 & 축소 ⤧  Next post C# OpenCV 강좌 : 제 10강 - 자르기
    C#-OpenCvSharp4 Category