일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- stream
- compare
- preprocessing
- sensor
- Read
- APP
- memory
- wpf
- atmega328
- Pointer
- Contour
- Binary
- flutter
- Barcode
- Overloading
- SERIAL
- UNO
- inheritance
- public
- digitalRead
- aduino
- java
- length
- parameter
- mfc
- Class
- Encapusulation
- Android
- file access
- Unity
- Today
- Total
목록머신 비전 (64)
폴크(FOLC)
# 8bit / 16bit / 24bit / 32bit 등의 여러가지 이미지 데이터 포멧이 있다. > CImage 형태 이용 > 8bit : 0 ~ 255까지의 값을 표현 ( Gray ) > 16bit : 0 ~ 65,535까지의 값을 표현 ( HQ Gray ) > 24bit : 0 ~ 16,777,215까지의 값을 표현 ( RGB ) > 32bit : 0 ~ 4,294,967,295까지의 값을 표현 ( RGBA ) # 소스 코드 const int src_sizex = src.GetWidth(); const int src_sizey = src.GetHeight(); const int src_pitch = abs(src.GetPitch()); const int src_bitpp = src.GetBPP();..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 정보를 생성한다. > 추출된 정보를 일반화한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 정보를 생성 - 거리 계산 > src : 입력, dst : 결과 # Cv2.Norm > List Points1 = new List(); > List Points2 = new List(); > DistanceTypes distType = DistanceTypes.L2; > double param = 0.0, reps = 0.01, aeps = 0.01; > Mat line_result1 = new Mat(), line_result2 = new Mat(); > Cv2.FitLine(InputArray.Create(P..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 정보를 제거한다 > 특별한 주파수 성분을 제거한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 정보를 제거 > srcImage : 입력, dstImage : 결과 # Cv2.Dft, Cv2.Idft > Mat padded = new Mat(), complexI = new Mat(); > int m = Cv2.GetOptimalDFTSize(srcImage.Rows); > int n = Cv2.GetOptimalDFTSize(srcImage.Cols); > Cv2.CopyMakeBorder(srcImage, padded, 0, m - srcImage.Rows, 0, n - srcImage.Cols, Bo..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 복원한다. > 이미지 정보에서 특별한 영역 복원 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 복원 > srcImage : 입력, dstImage : 결과, templateWindowSize : 복원 반경, searchWindowSize : 검색크기 > h : 필터 강도, hColor : 색상 구성 # Cv2.FastNlMeansDenoising > float h = 3.0f;| > int templateWindowSize = 7, searchWindowSize = 21; > Cv2.FastNlMeansDenoising(srcImage, dstImage, h, templateWindowSiz..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 복원한다. > 이미지 정보에서 특별한 영역 복원 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 복원 > srcImage : 입력, mskImage : 마스크, inpaintRadius : 복원 반경, flags : 알고리즘 > dstImage : 결과 # cv::inpaint > Mat mskImage = new Mat(); > double inpaintRadius = 3.0; > InpaintMethod flags = InpaintMethod.NS; > Cv2.Inpaint(srcImage, mskImage, dstImage, inpaintRadius, flags);
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특징점을 매칭한다. > 이미지 정보에서 특징점을 매칭 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특징점을 매칭 > srcImage : 입력, keypoints : 특징점, k : 가장 가까운 세트 개수, crossCheck : 서로 확인 > maxDistance : 최대 거리 using OpenCvSharp.Features2D; # Feature Detector - SIFT, BRISK, ORB, MSER, FFD, AFD, SBD, KAZE, AKAZE... > Mat srcImage1 = new Mat(), srcImage2 = new Mat(); > KeyPoint[] kpts1, kpts2; > Mat des..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특징점을 추출한다. > 이미지 정보에서 특징점을 추출 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특징점을 추출 > srcImage : 입력, keypoints : 특징점 using OpenCvSharp.Features2D; # SIFT - 특허 > var sift_detector = SIFT.Create(500); > List keypoints = sift_detector.Detect(srcImage).ToList(); # BRISK > var brisk_detector = BRISK.Create(500); > keypoints = brisk_detector.Detect(srcImage).ToList(); # ORB..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 코너 특징점을 추출한다. > 이미지 정보에서 코너 특징점을 추출 [ Harris-Stephens, Shi-Tomasi ] # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 코너 특징점을 추출 > srcImage : 입력, blockSize : 영역크기, ksize : 커널크기, QualityLevel : 정확도 > minDistance : 최소거리, k : 하리스코너 자유 매개변수 # Cv2.CornerHarris > int blockSize = 2, ksize = 3; > borderType = BorderTypes.Default; > double k = 0.05; > Cv2.CornerHarris(srcImage, ds..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 동일한 특별한 영역를 추출한다. > 이미지 색상의 정보를 이용해서 동일한 영역 추출 # 이미지 처리 - 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 : 입력, mskImage : 마스크, rtROI : 관심영역, bgModel : 배경, fgModel : 전경 > iter : 반복 횟수 # Cv2.GrabCut > Rect rtROI_cut = new Rect(); > Mat mskImage = new Mat(), bgModel = new Mat(), fgModel = new Mat(); > int iter = 5; GrabCutModes mode = GrabCutModes.Eval; > C..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역를 검색한다. > 이미지 매칭을 통해서 영역 검색 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 검색 > srcImage : 입력, tmpImage : 매칭 이미지, dstImage : 결과, method : 검색 방법 # cv::matchTemplate > Mat tmpImage = new Mat(); > TemplateMatchModes method = TemplateMatchModes.SqDiff; > Cv2.MatchTemplate(srcImage, tmpImage, dstImage, method); > Point minLoc = new Point(), maxLoc = new Point(..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 정보를 생성한다. > contour 를 통해 특별한 정보를 추출한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, contours : 결과, hierarchy : 결과 요소 # 이미지에서 윤곽선을 찾아낸다. > RetrievalModes mode = RetrievalModes.CComp; > ContourApproximationModes method = ContourApproximationModes.ApproxNone; > Point offset = new Point(); > Point[][] contours = null; > HierarchyIndex[] hi..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 정보를 생성한다. > contour 를 통해 특별한 정보를 추출한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, contours : 결과, hierarchy : 결과 요소 # 이미지에서 윤곽선을 찾아낸다. > RetrievalModes mode = RetrievalModes.CComp; > ContourApproximationModes method = ContourApproximationModes.ApproxNone; > Point offset = new Point(); > Point[][] contours = null; > HierarchyIndex[] hi..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 일반적인 정보를 생성한다. > 추출된 정보를 일반화한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 일반적인 정보를 생성 > Points : 입력, line_result : 결과, param : 수치형 매개변수(0 일때 최적화 자동 선택) > reps : 정확도(거리), aeps : 정확도(각도), dp : 해상도, param1 : canny 최대값, param2 : 최소 반지름 # Cv2.FitLine > List Points = new List(); > DistanceTypes distType = DistanceTypes.L2; > double param = 0.0, reps = 0.01, aeps = 0.01;..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역의 정보를 근사화 한다. > 추출된 정보를 근사화한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, dst_approxCurve : 결과 # Cv2.ApproxPolyDP > double thresh = 128.0, max_val = 255.0; > ThresholdTypes type = ThresholdTypes.Binary; > Cv2.Threshold(srcImage, dstImage, thresh, max_val, type); > RetrievalModes mode = RetrievalModes.CComp; > ContourApproximationMo..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 추출한다. > 윤곽선을 찾한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, contours : 결과, hierarchy : 결과 요소 # Cv2.FindContours > double thresh = 128.0, max_val = 255.0; > ThresholdTypes type = ThresholdTypes.Binary; > Cv2.Threshold(srcImage, dstImage, thresh, max_val, type); > RetrievalModes mode = RetrievalModes.CComp; > ContourApproximationM..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 추출한다. > 최외곽선을 구한다. # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, dst_hull : 결과 # Cv2.ConvecHull > 이미지의 상태 정보를 특별한 형태로 재표현 > double thresh = 128.0, max_val = 255.0; > ThresholdTypes type = ThresholdTypes.Binary; > Cv2.Threshold(srcImage, dstImage, thresh, max_val, type); > RetrievalModes mode = RetrievalModes.CComp; > ContourApproxim..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 영역을 추출한다. > blob 으로 처리 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 영역을 추출 > srcImage : 입력, dst_label : 결과, stats : 결과 정보, centroids : 중심 위치, connectivity : 검색, ltype : 자료형 # cv::connectedComponentWithStats > 이미지의 상태 정보를 특별한 형태로 재표현 - 출력 : 32비트 이미지 > double thresh = 128.0, max_val = 255.0; > ThresholdTypes type = ThresholdTypes.Binary; > Cv2.Threshold(srcImag..
# 디지털 이미지 처리 # 이미지의 상태 정보를 특별한 형태로 재표현/추출/비교 가능하다. > 역투영, 히스토그램등으로 색상 재표현/추출/비교에 대한 처리 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보를 특별한 형태로 재표현/추출/비교 > srcImage : 입력, dstImage : 결과, channel : 채널 정보, histSize : 빈도수, ranges : 범위 # Cv2.CalcHist > 이미지의 상태 정보를 특별한 형태로 재표현 > int dims = 1; > int[] channels = { 0 }, histSize = { 256 }; > Rangef[] ranges = { new Rangef(0, 256), }; > Mat mask = null /* al..
# 디지털 이미지 처리 # 이미지의 상태 정보에서 특별한 데이터를 추출/재구성 가능하다. > 색상 추출(RGB, HSI, HSV, YCrCb, Luv, Gray 등에), 색상 재구성에 대한 처리 # 이미지 처리 - OpenCV 4.5.3 으로 테스트 # 이미지의 상태 정보에서 특별한 데이터를 추출/재구성 > srcImage : 입력, dstImage : 결과, code : 색상 정보, dstCn : 결과 채널 정보 # Cv2.CvtColor > 이미지의 상태 정보에서 특별한 데이터를 추출 > ColorConversionCodes code = ColorConversionCodes.RGB2GRAY; > int dstCn = 0; > Cv2.CvtColor(srcImage, dstImage, code, dst..