본문 바로가기

전체 글26

C# OpenCvSharp 이미지 합치기,회전(rotate), 잘림 방지 방법 1. 이미지 합치기, 회전 및 잘림 방지 방법이미지 처리는 다양한 응용 분야에서 중요한 역할을 합니다. 특히 여러 장의 이미지를 하나로 합치거나, 회전 시 이미지 손실(잘림)을 방지하는 것은 컴퓨터 비전에서 자주 필요한 작업입니다. C#의 OpenCvSharp 라이브러리를 활용하면 이러한 작업을 효과적으로 수행할 수 있습니다. 본 글에서는 OpenCvSharp을 사용하여 이미지를 수평/수직으로 합치고, 회전하면서 손실을 최소화하는 방법을 설명합니다.2. 이미지 수평/수직 합치기여러 개의 이미지를 하나로 합치는 방법을 소개합니다.2.1 수평으로 이미지 합치기using OpenCvSharp;class Program{ static void Main() { Mat img1 = Cv2.Im.. 2025. 2. 28.
C# Task와 Background Task 차이점 및 활용 방법 1. Task와 Background Task의 차이점C#에서 비동기 작업을 처리할 때 가장 많이 사용되는 개념이 Task입니다. 하지만 특정 시나리오에서는 Background Task도 활용됩니다. 이 두 가지 개념의 차이점을 이해하면 더욱 효과적으로 비동기 프로그래밍을 구현할 수 있습니다.Task란?Task는 .NET에서 제공하는 대표적인 비동기 실행 단위입니다. 여러 개의 작업을 병렬로 실행하고, 작업이 완료될 때까지 기다리거나, 작업이 끝난 후 추가 작업을 실행하는 등의 기능을 제공합니다.Background Task란?Background Task는 백그라운드에서 실행되는 작업을 의미하며, 보통 서비스에서 장기간 실행되는 작업이나, UI의 응답성을 유지하기 위해 사용됩니다. Task와 마찬가지로 비동.. 2025. 2. 28.
C# OpenCvSharp FFT(푸리에 변환) 이해 및 활용 1. 푸리에 변환(FFT) 개요푸리에 변환(Fourier Transform, FT)은 신호나 이미지를 주파수 도메인으로 변환하는 수학적 방법입니다. 이를 통해 공간(시간) 도메인에서 복잡하게 보이는 신호를 주파수 성분으로 분석할 수 있습니다.이산 푸리에 변환(DFT, Discrete Fourier Transform)은 다음과 같은 수식으로 정의됩니다.여기서,반대로, 주파수 도메인에서 원본으로 되돌리는 역 푸리에 변환(IDFT, Inverse DFT)은 다음과 같이 정의됩니다.FFT(Fast Fourier Transform)는 DFT를 빠르게 계산하는 알고리즘입니다.2. OpenCvSharp에서 FFT 적용하기OpenCvSharp은 OpenCV를 C#에서 사용할 수 있도록 래핑한 라이브러리로, FFT를 이.. 2025. 2. 27.
C# OpenCvSharp을 활용한 외곽선(윤곽선) 및 꼭지점 검출 방법 1. 개요이미지에서 객체의 외곽선을 감지하고, 윤곽선을 따라 꼭지점을 찾는 것은 이미지 처리에서 매우 중요한 작업 중 하나입니다. C#에서 OpenCvSharp 라이브러리를 활용하면 이러한 작업을 쉽게 수행할 수 있습니다. 이번 글에서는 OpenCvSharp을 이용하여 외곽선을 검출하고, 윤곽선을 따라 꼭지점을 찾아 시각적으로 표현하는 방법을 설명하겠습니다.2. OpenCvSharp 설정OpenCvSharp을 사용하려면 NuGet 패키지를 설치해야 합니다. Visual Studio에서 OpenCvSharp4 및 OpenCvSharp4.Runtime.Windows 패키지를 설치하세요.Install-Package OpenCvSharp4Install-Package OpenCvSharp4.Runtime.Wind.. 2025. 2. 26.
OpenCV를 활용한 C#, C++, Python에서 이미지 ROI 내 Crop 방법 이미지 처리에서 관심 영역(ROI, Region of Interest)을 지정하고 해당 부분만 크롭(Crop)하는 것은 매우 중요한 영상처리에 있어서 가장 많이 사용하고, 그만큼 중요한데요. OpenCV는 다양한 프로그래밍 언어(C++, Python, C#)에서 지원되고 있습니다. 이본 포스트에서는 OpenCV를 활용한 C++, Python, C#에서의 이미지 ROI Crop 방법을 자세히 설명하겠습니다.1. ROI (Region of Interest)란?ROI(Region of Interest)는 이미지에서 특정 관심 영역을 지정하여 처리하는 기술입니다. 예를 들어, 다음과 같은 경우에 활용할 수 있습니다.얼굴 검출 후 특정 부분만 추출자동차 번호판 인식에서 번호판 영역만 크롭이미지 내 특정 객체의 색.. 2025. 2. 25.
C# OpenCVSharp을 활용한 이진화, Edge 검출, 그리고 Blob을 이용한 Data 추출 이미지 처리에서 중요한 기술 중 하나는 특정 객체나 경계를 인식하고 필요한 데이터를 추출하는 것입니다. OpenCVSharp을 활용하면 C#에서 OpenCV의 강력한 기능을 쉽게 사용할 수 있습니다.본 포스트에서는 이진화(Binary Thresholding), 엣지 검출(Edge Detection), 그리고 Blob 분석을 통한 데이터 추출 방법을 설명하겠습니다.1. OpenCVSharp 설치C#에서 OpenCV를 사용하려면 OpenCVSharp 라이브러리를 활용하면 됩니다. OpenCVSharp은 OpenCV의 C++ API를 C#에서 쉽게 사용할 수 있도록 래핑한 라이브러리입니다.설치 방법Visual Studio에서 NuGet 패키지 관리자를 엽니다.다음 패키지를 검색하여 설치합니다. nstall-P.. 2025. 2. 25.