■ Image 클래스의 Sobel 메소드를 사용해 소벨 에지 XY 회선을 적용하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Gray, float> sourceImage = new Image<Gray, float>("c:\\source.jpg"); Image<Gray, float> targetImage = sourceImage.Sobel(1, 1, 3); |
■ Image 클래스의 SmoothBlur 메소드를 사용해 블러링(희미화) 회선을 적용하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Gray, float> sourceImage = new Image<Gray, float>("c:\\source.jpg"); Image<Gray, float> targetImage = sourceImage.SmoothBlur(5, 5); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스의 Convolution 메소드를 사용해 샤프닝(첨예화) 회선을 적용하는 방법을 보여준다. ▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
using Emgu.CV; using Emgu.CV.Structure; float[,] maskArray = { { 0.0f, -1.0f, 0.0f }, { -1.0f, 5.0f, -1.0f }, { 0.0f, -1.0f, 0.0f } }; ConvolutionKernelF convolutionKernelF = new ConvolutionKernelF(maskArray); Image<Gray, float> sourceImage = new Image<Gray, float>("c:\\source.jpg"); Image<Gray, float> targetImage = sourceImage.Convolution(convolutionKernelF); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스의 Convolution 메소드를 사용해 볼록 회선을 적용하는 방법을 보여준다. ▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
using Emgu.CV; using Emgu.CV.Structure; float[,] maskArray = { { 0.0f, -1.0f, 0.0f }, { -1.0f, 0.0f, 1.0f }, { 0.0f, 1.0f, 0.0f } }; ConvolutionKernelF convolutionKernelF = new ConvolutionKernelF(maskArray); Image<Gray, float> sourceImage = new Image<Gray, float>("c:\\source.jpg"); Image<Gray, float> targetImage = sourceImage.Convolution(convolutionKernelF); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 히스토그램 평활화를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Clone(); targetImage._EqualizeHist(); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 오목 파라볼라 함수를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Convert<byte> ( delegate(byte value) { return (byte)(255.0 * (value / 127.0 - 1.0) * (value / 127.0 - 1.0)); } ); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 볼록 파라볼라 함수를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Convert<byte> ( delegate(byte value) { return (byte)(255.0 - 255.0 * (value / 127.0 - 1.0) * (value / 127.0 - 1.0)); } ); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 대비 감소를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
using Emgu.CV; using Emgu.CV.Structure; double contrast = 30.0; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Convert<byte> ( delegate(byte value) { return (byte)((255.0 - 2.0 * contrast) / 255.0 * value + contrast); } ); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 감마를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
using System; using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Convert<byte> ( delegate(byte value) { return (byte)(255.0 * Math.Pow((double)value / 255.0, 2.5)); } ); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
※ 감마를 감소시키는 경우 (1.0 / 2.5)를 설정한다.
■ Image 클래스에서 대비 증가를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
using Emgu.CV; using Emgu.CV.Structure; double contrast = 30.0; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Convert<byte> ( delegate(byte value) { return (byte)(255.0 / (255.0 - 2.0 * contrast) * (value - contrast)); } ); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 감마를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Clone(); targetImage._GammaCorrect(2.5); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
※ 감마를 감소시키는 경우 (1.0 / 2.5)를 설정한다.
■ Image 클래스에서 이미지를 복제하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Clone(); |
■ Image 클래스에서 NOT 이미지를 구하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Not(); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 컬러 이미지 → 회색조 이미지로 변환하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr , byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Gray, byte> targetImage = sourceImage.Convert<Gray, byte>(); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 OR 이미지를 구하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Bgr bgr = new Bgr(Color.Blue); Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Or(bgr); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 AND 이미지를 구하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Bgr bgr = new Bgr(Color.Blue); Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.And(bgr); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 대비를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage * 1.4; sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
※ 대비를 감소시키는 경우 1.4로 나눈다.
■ Image 클래스에서 XOR 이미지를 구하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Bgr bgr = new Bgr(Color.Blue); Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage.Xor(bgr); sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
■ Image 클래스에서 명도를 조정하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> sourceImage = new Image<Bgr, byte>("c:\\source.jpg"); Image<Bgr, byte> targetImage = sourceImage + 30; sourceImageBox.Image = sourceImage; targetImageBox.Image = targetImage; |
※ 명도를 감소시키는 경우 30을 뺀다.
■ Image 클래스에서 이미지를 합성하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image<Bgr, byte> image1 = new Image<Bgr, byte>("c:\\image1.png"); Image<Bgr, byte> image2 = new Image<Bgr, byte>("c:\\image2.png"); Image<Bgr, byte> image3 = image1 * 0.7 + image2 * 0.3; |
■ Image 클래스에서 각각 8비트인 RGB 컬러 영상을 사용하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image <Bgr, byte> image = new Image<Bgr, byte>(400, 300); |
■ Image 클래스에서 이미지 파일을 사용하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image <Bgr, byte> image = new Image<Bgr, byte>("sample.jpg"); |
■ Image 클래스에서 8비트 음영 영상을 사용하는 방법을 보여준다. ▶ 예제 코드 (C#)
|
using Emgu.CV; using Emgu.CV.Structure; Image <Gray, byte> image = new Image<Gray, byte>(400, 300); |