일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Binary
- Contour
- APP
- Unity
- Pointer
- c++
- stream
- digitalRead
- Gradient
- sensor
- wpf
- Read
- Gaussian
- flutter
- UNO
- file access
- Class
- aduino
- SERIAL
- parameter
- compare
- Filtering
- subpixel
- mfc
- Android
- public
- memory
- atmega328
- Encapusulation
- edge
- Today
- Total
목록detect (7)
폴크(FOLC)
edge 방향을 탐지하는 것은 **gradient의 부호(sign)**를 기반으로 각 edge가 어떤 밝기 변화 방향으로 이동하는지를 판별하는 것입니다. 이는 **양의 gradient (dark → bright)**와 **음의 gradient (bright → dark)**를 구분함으로써, Line & Space 구조의 시작점/끝점, 혹은 선폭(CD) 측정의 정확한 기준 edge 구분이 가능하다개념: gradient의 부호로 edge 방향 구분G(x)=I(x+1)−I(x−1)G(x) = I(x+1) - I(x-1)G(x)=I(x+1)−I(x−1)G(x)>0G(x) > 0G(x)>0: 양의 gradient → 밝아지는 edge (dark → bright)G(x)G(x)0: 음의 gradient → 어두워지..
CD 측정 같은 선형 구조 분석에는 오히려 1D 프로파일 기반 edge 추출이 정확하고 제어 가능하며, subpixel 정밀도를 높일 수 있다.1D based edge detection - 한 줄의 intensity profile에서 경계점을 찾는 방식 (예: 특정 row 또는 column)- Subpixel 보간, 잡음 억제 용이, 정밀도 향상, 구조 선형성 이용 가능 - Line & Space 구조, mask/wafer CD 측정, 전자현미경 이미지 등 예제#include #include using namespace cv; using namespace std; // 1D derivative 계산 후 subpixel 보간으로 edge 위치 추정 vector findEdges1DWithSubpixe..
Edge line 전체에 대해 Least-Squares Line Fitting을 수행하면, 단순히 픽셀마다 edge를 추정하는 것이 아니라, 전체 edge 점들을 직선 또는 곡선으로 모델링하여 더 안정적이고 subpixel 수준의 CD(임계 치수) 측정이 가능하다.개념- 입력 : edge image / binary edge mask image- 처리 : edge point detect -> line fitting model : ax + by + c = 0- 출력 : line to line distance, line equation of each line #include #include using namespace std; using namespace cv; // 직선 피팅 함수 (OpenCV fitL..
Sub-pixel Edge Detection 기반의 고정밀 CD측정은 pixel-level 경계 검출의 한계를 넘어, 곡선 보간, Edge fitting, 또는 gradient interpolation 등을 이용하여 실제 구조의 경계선을 소수점 단위까지 정밀하게 추정하는 방법이다원리- Edge 검출: Sobel 또는 Canny로 초기 edge map 생성- Gradient interpolation: 엣지 픽셀 주변에서 1차 또는 2차 곡선을 피팅하여 정확한 edge 위치를 소수점 단위로 추정- Edge pair 매칭: 좌/우 또는 위/아래 edge 쌍을 찾아 거리 계산- 실측 크기 변환 (선택): pixel 단위를 μm 등으로 변환 예제#include #include using namespace cv..

# 디지털 이미지 처리 # 이미지의 상태 정보에서 동일한 특별한 영역를 추출한다. > 이미지 색상의 정보를 이용해서 동일한 영역 추출 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 동일한 특별한 영역를 추출 > srcImage : 입력, mskImage : 마스크, thresh1 : 경계값, L2gradient : 기울기 # Cv2.Canny > double thresh1 = 128.0, thresh2 = 228.0; > Cv2.Canny(srcImage, dstImage, thresh1, thresh2);

# 디지털 이미지 처리 # 이미지 상태 정보에서 특별한 내용을 추출한다. > 이미지 정보에서 특별한 내용 추출 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지 상태 정보에서 특별한 내용을 추출 > srcImage : 입력, decode : 결과 # cv::QRCodeDetector > cv::QRCodeDetector detector; > vector points; > if (detector.detect(srcImage, points) == true) > { > cv::String info = detector.decode(srcImage, points); > }

# 디지털 이미지 처리 # 이미지의 상태 정보에서 동일한 특별한 영역를 추출한다. > 이미지 색상의 정보를 이용해서 동일한 영역 추출 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 동일한 특별한 영역를 추출 > srcImage : 입력, mskImage : 마스크, thresh1 : 경계값, L2gradient : 기울기 # cv::canny > double thresh1 = 128.0, thresh2 = 228.0; > int L2gradient = false; > cv::Canny(srcImage, dstImage, thresh1, thresh2, L2gradient); # cv::LineSegmentDetector > cv::Ptr det = cv::createL..