일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 시리얼 통신
- C# Opencv 영상
- RS232 시리얼 통신 결과물
- RS232 통신
- RS232통신
- 광량 제어
- vscode
- ALT-8RSD-12V
- ALT-8RSD-12
- 더하기사이클
- ALT-8RSD-12 통신 프로토콜
- c# opencv
- Scripting API
- 18.04
- RS232
- C#
- template matching
- PictureBoxIpl
- 카메라 추적
- ALT-8RSD-12V 프로토콜
- OpenCVSharp 2.4.10
- 0~255
- 3D
- Windows Forms
- 에셋스토어
- Unity
- AssetStore
- 유니티
- 흐림화
- RS232 시리얼통신
- Today
- Total
앉아있는 프래그래머
C# OpenCv 영상 이진화 본문
영상을 출력하였을때 영상과 이진화된 영상을 같이 출력 그리고 캡처를 하면 기본 캡처이미지와 이진화된 이미지 캡처
이번 내용은 앞에 내용 영상출력 pictureBoxIpl 3개와 값변경을 위한 텍스트 박스를 넣은 것
pictureBoxIpl3.ImageIpl = Binary(src);
//Binary가 된 이미지를 pictureBoxIpl3에 출력
IplImage bin; //binary된 이미지를 담을 껍데기
public IplImage Binary(IplImage src) //binay만들기.
{
bin = new IplImage(src.Size, BitDepth.U8, 1);
//bin에 메모리 확보를 위하여 선언합니다. IplImage(크기, 정밀도, 채널)
을 입력
//단색일경우는 채널 1 , 다색일경우 3
Cv.CvtColor(src, bin, ColorConversion.RgbToGray);
//Cv.CvtColor()을 이용하여 그레이스케일
Cv.Threshold(bin, bin,Convert.ToDouble(textBox1.Text), 255, ThresholdType.Binary);
//Cv.Threshold(원본, 결과, 임계값, 최댓값, 임계값종류)
를 설정
//임계값이 0일경우 흑색 ,최대일경우 백색
return bin;
}
public void Dispose()
{
if (bin != null) Cv.ReleaseImage(bin);
}
private void trackBar1_Scroll(object sender, EventArgs e)
{
textBox1.Text = trackBar1.Value.ToString();
//임계값 수정
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
trackBar1.Value = Convert.ToInt32(textBox1.Text);
//임계값 수정
}
개인적인 공부로 하는거라 요약된 점이 많습니다.
혹시나 더 많은 정보를 원하시면 아래 주소로 들어가보시는걸 추천 드립니다 ^^
'프로그래밍 > C# OpenCv' 카테고리의 다른 글
C# OpenCv 템블릿 매칭(Template Matching) (0) | 2018.07.19 |
---|---|
C# OpenCv 흐림화(Blur) (0) | 2018.07.19 |
C# OpenCv 영상 출력 - 캡처 + 녹화 추가 (0) | 2018.07.19 |
C# OpenCv 영상 출력 (0) | 2018.07.19 |
C# OpenCv PictureBoxIpl 도구 추가 (0) | 2018.07.19 |