프로젝트

일반

사용자정보

개정판 16231f58

ID16231f58ac0aa96636789e45013d9a97576dc357
상위 5bec847f
하위 92e69742, 253c9730

김태성이(가) 4달 전에 추가함

issue #0000 imagecompare 수정
- rect을 opencv에서 그려 이미지로 출력

Change-Id: I241d6b62eb8dd88ae4a970c4e531d079bbaa3602

차이점 보기:

Markus.ImageComparer/ImageCompareBase.cs
126 126
             
127 127
            return results;
128 128
        }
129
        protected System.Drawing.Bitmap GetContoursImage(Mat data, Size resultSize, Color RectColor)
130
        {
131
            System.Drawing.Bitmap result = null;
132

  
133
            try
134
            {
135
                Mat transparentImage = new Mat(new OpenCvSharp.Size(resultSize.Width, resultSize.Height), MatType.CV_8UC4, new Scalar(0, 0, 0, 0));
136

  
137
                // 컨투어를 찾기 위한 변수 선언
138
                HierarchyIndex[] hierarchy;
139
                OpenCvSharp.Point[][] contours;
140
                OpenCvSharp.Point testpoint = new OpenCvSharp.Point();
129 141

  
142
                Cv2.Threshold(data, data, 100, 255, ThresholdTypes.BinaryInv);
143
                // 이진화된 이미지에서 컨투어 찾기
144
                Cv2.FindContours(data, out contours, out hierarchy, RetrievalModes.List, ContourApproximationModes.ApproxNone, testpoint);
145

  
146

  
147
                // Scalar(B,G,R,A)
148
                // 컨투어 그리기
149
                Cv2.DrawContours(transparentImage, contours, -1, new Scalar(RectColor.B, RectColor.G, RectColor.R, RectColor.A), 10);
150

  
151
                // Mat을 Bitmap으로 변환
152
                result = OpenCvSharp.Extensions.BitmapConverter.ToBitmap(transparentImage);
153
            }
154
            catch (Exception ex)
155
            {
156
                throw new Exception("GetContoursImage Error.", ex);
157
            }
158
            finally
159
            {
160

  
161
            }
162

  
163
            return result;
164
        }
130 165
        private List<System.Windows.Rect> GetRectListAsParallel(OpenCvSharp.Point[] points, Size block)
131 166
        {
132 167
            List<System.Windows.Rect> result = new List<System.Windows.Rect>();

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)