hytos / DTI_PID / DTI_PID / READ ME.txt @ 41ef00bd
이력 | 보기 | 이력해설 | 다운로드 (18.5 KB)
1 |
�ۼ��� : 2018.06.28(��) |
---|---|
2 |
�ۼ��� : ������ ��� |
3 |
|
4 |
** Ŭ����, �Լ� �ۼ�/���� �� �ּ� �ۼ� �ʿ� ** |
5 |
''' |
6 |
@brief ���� |
7 |
@author �ۼ��� |
8 |
@date �ۼ��� |
9 |
@history �ۼ��� �ۼ��� ���� |
10 |
(history�� ��� ���� �� �ۼ�) |
11 |
''' |
12 |
|
13 |
** �� ���̽� ���� �� �� ���� ������ ���� ** |
14 |
|
15 |
1. DTI_PID ���� �� ��� |
16 |
1) App.py |
17 |
- 2018.06.28(��) ���� ���� ���α� |
18 |
- ���α� ��Ÿ�Ͻ�Ʈ(*.qss) ���� |
19 |
- __main__ ���� ���� |
20 |
- ProjectDialog �� ����Ͽ�, ������Ʈ ���ÿ� ���� ������ ���� AppDocData�� ���� �� MainWindow �� ���� |
21 |
|
22 |
2) AppDocData.py |
23 |
- ���α� ������ ����ϴ� ���� Configuration, Database ������ ���� ��� |
24 |
- Source, Area, Config, NominalPipeSize, Color, AppDocData �� Ŭ������ ���� |
25 |
- Singleton���� ������ AppDocData�� �����Ͽ� �� ������ ���� |
26 |
- Source : QtImageViewer�� ��µǴ� �̹��� ���� �� ��ȯ |
27 |
- Area : ������������ ������ �� Drawing, Note ���� ���� ���� ���� �� ��ȯ |
28 |
- Config : ���� Configuration�� ���� ���� ���� |
29 |
- NominalPipeSize : ����� Nominal Pipe �� ���� ���� ���� �� ��ȯ |
30 |
- Color : ����� ���� �� �ɺ��� ���� �⺻ ���� ���� |
31 |
- AppDocData : �ַ� Database�� ����, Source, Area �� ��Ÿ �ٸ� Ŭ������ ������ �����ϰų�, �� �ҷ����µ� ��� |
32 |
|
33 |
3) AreaOcrTestModule.py |
34 |
- Tesseract�� �̿��� ���� ���� OCR ����� ��Ʈ�ϱ� ���� ��� |
35 |
- ������ ������ �ʴ� ��� |
36 |
|
37 |
4) azure_handwrite_ocr_module.py |
38 |
- Azure Computer Vision API �� Handwrite OCR�� ����ϱ� ���� ��� |
39 |
- ���� ������ �ʴ� ��� |
40 |
- azure_ocr_module �� ū ���̴� ������, azure_ocr_module �� ��� ������ �ؽ�Ʈ ������ �ƴ� �ؽ�Ʈ ���� ����� ����Ǿ� ����� �ڵ尡 ������ |
41 |
|
42 |
5) azure_ocr_module.py |
43 |
- https://westus.dev.cognitive.microsoft.com/docs/services/5adf991815e1060e6355ad44/operations/56f91f2e778daf14a499e1fc |
44 |
- ���� �̹����� ���Ե� �ؽ�Ʈ ���� |
45 |
- Orientation, Angle, Text, BoundingBox ������ ��ȯ |
46 |
- Orientation : Up, Down, Left, Right �� ���� �־�����, ó�� �νĵ� �ؽ�Ʈ�� �������� �ٸ� �ؽ�Ʈ�� ���� |
47 |
- ���� Line ������ �ؽ�Ʈ�� ���� / �ʱ�� Word ������ ���� |
48 |
- TextInfo �� �����Ͽ� ������ ����������, ���α� �� Azure OCR�� �뵵�� ����Ǹ鼭 ����� �ؽ�Ʈ ������ �������� ���� |
49 |
|
50 |
6) DTI_PID.py |
51 |
- �ɺ�, �ؽ�Ʈ, ���� ���� ���� �ڵ尡 ������ִ� ��� |
52 |
- �ɺ��� �ش� ���� ���� ó�� / �ؽ�Ʈ, ���� ������ ��� �ٸ� ����� ȣ���� �� ��ó�� |
53 |
- �ʱ �ۼ��Ǿ� Ŭ������ �ƴ� �Լ��� �������� ������ ���� �� �Լ� ȣ�� �� Ŭ���� ���� ���� ���ǵ� �Ķ���� ���� |
54 |
- MainWindow �κ��� ����� ��� executeRecognition() �� recognizeLine() �� ȣ�� (2018.06.28 ����) |
55 |
- executeRecognition() �� ��� ũ�� �Ʒ��� ������ ���� (2018.06.28 ����) |
56 |
|
57 |
[1] �����Ϸ��� TargetSymbol ����Ʈ �ʱ�ȭ |
58 |
[2] �ؽ�Ʈ ���� ���� |
59 |
[3] ��� ����� ���� �̹��� �ʱ�ȭ �� �ؽ�Ʈ(����, ��Ʈ) ���� ���� |
60 |
[4] TargetSymbol ����Ʈ�� ��ȸ�Ͽ� ���� �� �ɺ� ���� |
61 |
- Template Matching �� ���� ���� |
62 |
- ��Ī�Ǵ� Key Point ���� �� ���� ���� |
63 |
[5] ����� �ɺ� �� �ؽ�Ʈ�� �� �̹���(Canvas)�� �� |
64 |
[6] ����� �ɺ��� �������κ��� ���� |
65 |
[7] ����� �ɺ��� ���� ������ �������� �簢�� ������ �� |
66 |
[8] ����� �ؽ�Ʈ�� �������κ��� ���� |
67 |
|
68 |
- recognizeLine() �� ��� ũ�� �Ʒ��� ������ ���� (2018.06.28 ����) |
69 |
|
70 |
[1] ����� ���� ���� �� ȭ��ǥ ���� |
71 |
[2] ����� ���� �ɺ� ���� ȹ�� �� �� �ɺ��� �������� ����� ���� ���� |
72 |
[3] ���� ������ ������ �ϳ��� ���� |
73 |
[4] ���ΰ� �ɺ��� ���� |
74 |
[5] ���ΰ� ������ ���� |
75 |
[6] �� ������ EngineeringLineItem ���� ���� �� QtImageViewer ���� �߰� |
76 |
[7] ȭ��ǥ �߰� |
77 |
|
78 |
7) MainWindow.py |
79 |
- ��� �� ����, ���� ��� Ʈ�� �� ���̺� ������ ������ ���� ����, QtImageViewer, ���� ��� Ʈ�� �� ���̺� ������ ������ ���� �������� ���� |
80 |
- ���� �� ���� �� �� �� �Ϻδ� ��� ���� ������ ǥ���ϱ� ���� üũ�ڽ��� �����Ǿ� �̸� �����ϱ� ���� QActionGroup ���� ���� ���� |
81 |
- �� ���� ���� Commands ���� ���� *Command.py �� �����Ǿ� ������, QtImageViewer.command �� ġȯ�Ͽ� ��� |
82 |
- ���� �̹��� ���� �� openImageDrawing() �Լ� ȣ�� �� ���õ� ���鿡 ���� ������ ���� �� Ʈ���� ǥ�� |
83 |
- ���� �̹��� ���� �� �̹� ������ �߰�����(xml)�� ���� ��� �ش� ������ ������� �ɺ�, ����, �ؽ�Ʈ�� QtImageViewer �� ǥ�� |
84 |
|
85 |
8) Project.py |
86 |
- ������Ʈ ������ �����ϰ� �ִ� Ŭ���� |
87 |
- ������Ʈ ��θ� �������� DB, SVG, TEMP, OUTPUT ���� ��θ� ��ȯ�ϴ� getter �Լ� ���� |
88 |
|
89 |
9) ProjectDialog.py |
90 |
- ������Ʈ�� ����, �����ϱ� ���� ���̾�α� |
91 |
- QDialog.exec_() �� ���� ��µDZ� ������ ���̾�α� �ܺο� ��Ŀ���� �̵����� ���� |
92 |
|
93 |
10) ConfigurationDialog.py |
94 |
- ���α� ������ �ʿ��� �������� �����ϱ� ���� ���̾�α� |
95 |
|
96 |
11) SymbolTreeWidget.py |
97 |
- MainWindow ���� ��ܿ� ��ġ�� TreeWidget |
98 |
- ���� ������� ��ϵ� �ɺ� �̹��� ����Ʈ�� Tree �������� ǥ�� |
99 |
- �ɺ��� ������� ���콺 ���� Ŭ���� ��� [����, ũ�Ժ���, ����] �� ������ Context Menu ǥ�� |
100 |
- ��µǴ� �ɺ� �̹����� Symbol Type �� ���� Tree ���� |
101 |
- �ɺ��� ������� ���� Ŭ�� �� SymbolEditorDialog ǥ�� |
102 |
- �ɺ��� ������� Ŭ�� �� �ϴ� QSymbolPropertyTableWidget �� �ɺ� ���� ��� |
103 |
- �ɺ� �巡��, ��� �� QtImageViewer �� �ɺ� ���� |
104 |
|
105 |
12) OcrResultDialog.py |
106 |
- MainWindow ���� �� �� OCR �Ǵ� ����ǿ� QtImageViewer �� ǥ�õ� �ؽ�Ʈ�� ����Ŭ���� ��� ǥ�õǴ� ���̾�α� |
107 |
- ��� ���� �̹��� �� ����� �ؽ�Ʈ�� ȸ�� �ɼ� ���� |
108 |
- 90�� ���� ȸ���� �����ϸ�, ������ �ؽ�Ʈ�� ���������� ȸ���Ͽ� ��ġ�� �� Re-Detect ��ư�� Ŭ���� �� �ؽ�Ʈ ���� |
109 |
- Ȯ�� ��ư Ŭ�� �� ����� �ؽ�Ʈ�� ����, ȸ�� ������ ������ TextInfo ��ȯ |
110 |
|
111 |
13) QSymbolPropertyTableWidget.py |
112 |
- SymbolTreeWidget ���� ���õ� �ɺ��� ������ ��� |
113 |
- TableWidget���� ���� �� Database�� ��� �ݿ��ϴ� ��ȹ�� �־�����, ��� �����Ƿ� ���� ���� ������ |
114 |
|
115 |
14) RecognitionDialog.py |
116 |
- �ɺ�, �ؽ�Ʈ �� ������ �����ϱ� ���� ���̾�α� |
117 |
- 2���� üũ�ڽ�, �����ư, ���� ��� ����Ʈ, ���α����ٷ� ���� |
118 |
- �ش� ��� ���� �ִ� Worker�� procCounter() �� ȣ���Ͽ� ���� ���� |
119 |
- startThread() ������ ��� �ʿ��� ���� �� ������ ���� |
120 |
|
121 |
15) ItemPropertyTableWidget.py |
122 |
- ResultTreeWidget���� ���õ� ���� ������ ��� |
123 |
|
124 |
16) ItemTreeWidget.py |
125 |
- ����� �ɺ�, ���γѹ�, ��Ʈ(NOTE 1, NOTE 2, ...) ����Ʈ�� Tree ���·� ���� |
126 |
- ���γѹ� ������ ��� ���콺 ��Ŭ�� �� ���� ���� ���� |
127 |
- ���� ���� �� ���� �����۵鵵 ���� ���� |
128 |
- QtImageViewer �� Scene ���� ���� �� ���� |
129 |
- ����� ������ ���� �� �ش� ��ġ�� QtImageViewer �� �̵� �� �� �εǸ�, ���̶����� ȿ�� ǥ�� |
130 |
|
131 |
17) QSymbolDisplayDialog.py |
132 |
- SymbolTreeWidget ���� �ɺ� ������� ���콺 ��Ŭ���� �� �� ���� �� ��µǴ� ���̾�α� |
133 |
- �ܼ��� �ɺ� �̹����� ��� |
134 |
|
135 |
18) SymbolEditorDialog.py |
136 |
- ��� ����� �ɺ��� ���, �����ϱ� ���� ���̾�α� |
137 |
- ���� ������ ���� ��ư Ŭ�� �� ���� ��ü�� ����� ä�� ���̾�α� ��� |
138 |
- Hand, Crop, Pen, Eraser, Area Eraser, Fit Image, Remove Text, Rotation, Flip, Zoom, Show Guideline ���� ���� |
139 |
- �� �� ���� �� QtImageViewer.command �� �� ���� �´� Command�� ġȯ�Ͽ� ��� |
140 |
- �ɺ� ����, ���� �� ���� ���ϸ��� ���� ��� ���ϸ�(1) �� ���� �̸� ���� |
141 |
- ���� ID �� ��� 100�� �ڸ��̻��� ī�װ�, ������ ī�װ� �� ���� ������ ��� �� (2018.06.28 ����) |
142 |
|
143 |
��) 100, 101, 201, 202 �� ��� [[100, 101], [201, 202]] �� ���� TargetSymbol�� ����Ǿ� �� ī�װ� ���� ���� ���� |
144 |
|
145 |
- ���� �ɺ� �� �ΰ� �ɺ��� ��ϵǴ� ������ SPPID ���� ����� ���� �ɺ��� |
146 |
- �ΰ� �ɺ��� ��� ���ڽ� ������ �߰� ��ư�� ������ ��� |
147 |
- Original Point �� �ɺ� �� 1��, Connection Point �� �ɺ��� 0�� �̻� ��� ���� |
148 |
- ���� ������ ���� üũ �� �ɺ� ���� �������� �ش� �ɺ��� �������� ���� |
149 |
- ��� ���� ���� üũ �� �ش� ��ġ�� �ɺ� ���� |
150 |
|
151 |
19) QtImageViewer.py |
152 |
- https://github.com/marcel-goldschen-ohm/PyQtImageViewer |
153 |
- Ȯ�� �� �̹��� ���� ��Ģ�� Qt.KeepAspectRatio ��� |
154 |
|
155 |
20) Symbol.py |
156 |
- SymbolBase �� ��ӹ��� Ŭ���� |
157 |
- ���� ���� ���� ������ ���� |
158 |
|
159 |
21) SymbolBase.py |
160 |
- Target Symbol ������ ���� �� �ʿ��� ���� ������ ���� |
161 |
- �ɺ��� �� ���(SVG, IMAGE)�� ��ȯ�ϴ� getter �Լ� ���� |
162 |
|
163 |
22) tesseract_ocr_module.py |
164 |
- �ַ� ���Ǵ� �Լ��� getTextInfo() |
165 |
[1] �ؽ�Ʈ ������ �����ϴ� pytesseract.image_to_string() �� �������� �� Char ���� ������ �����ϴ� pytesseract.image_to_boxes �� ��� |
166 |
[2] ����� �ؽ�Ʈ ������ ���� ��� �ؽ�Ʈ ���� ���� ���� |
167 |
[3] �� Char�� ���� �� ������ ������ Line ������ �������� ���� ���ο� �ִ��� �˻� �� ���� (QRectF.intersects() �̿�) |
168 |
[4] ����� �ؽ�Ʈ ������ TextInfo �� �����Ͽ� ��ȯ |
169 |
|
170 |
23) TextInfo.py |
171 |
- ����� �ؽ�Ʈ ������ ������ Ŭ���� |
172 |
|
173 |
24) TextItemFactory.py |
174 |
- EngineeringTextItem ���� �������� ���� �� ��� |
175 |
- EngineeringTextItem ���� �� �ʿ��� ������ �����Ͽ�, �ش� �����Ϳ� �´� Ÿ���� �������� ��ȯ |
176 |
- ���� ������ ������ ��� (2018.06.28 ����) |
177 |
|
178 |
[1] QEngineeringNoteItem |
179 |
[2] QEngineeringLineNoItem |
180 |
[3] QEngineeringSizeTextItem |
181 |
[4] QEngineeringTagNoTextItem |
182 |
[5] EngineeringTextItem |
183 |
|
184 |
25) XmlGenerator.py |
185 |
- �߰����� �� SPPID ��ȯ�� XML ���� ������ ���� ��� |
186 |
- writeXmlOnScene() : �߰� ���� xml ���� |
187 |
- generateOutputXml() : SPPID ��ȯ�� xml ���� |
188 |
|
189 |
|
190 |
|
191 |
2. Commands ���� �� ��� |
192 |
1) AreaEraserCommand.py |
193 |
- QtImageViewer ������ �巡���Ͽ� ������ ������ ���(255, 255, 255) �ȼ��� ��ü |
194 |
|
195 |
2) AreaOcrCommand.py |
196 |
- QtImageViewer ������ �巡���Ͽ� ������ ������ �ؽ�Ʈ�� ���� |
197 |
- �ؽ�Ʈ ���� �� Ȯ�� ��ư Ŭ�� �� ����� �ؽ�Ʈ�� QtImageViewer�� Scene�� �ݿ��Ǿ� ǥ�� |
198 |
|
199 |
3) AreaZoomCommand.py |
200 |
- QtImageViewer ������ �巡���Ͽ� ������ ������ Ȯ�� |
201 |
|
202 |
4) ConnectionPointCommand.py |
203 |
- �ɺ� ����/���� �� Connection Point�� �����ϱ� ���� Command |
204 |
- ���콺 �̵� �� Crosshair ǥ�� |
205 |
- Connection Point�� ǥ���ϱ� ���� drawCircle() �� ��� static ���� ���� |
206 |
|
207 |
5) CreateSymbolCommand.py |
208 |
- QtImageViewer ������ �巡���Ͽ� ������ ������ �������� QSymbolEditorDialog �� ������� ���ο� �ɺ��� �����ϱ� ���� Command |
209 |
- ���� MainWindow ���� ���� ������� �ʾ�, ������ ������ �ʰ� ���� |
210 |
|
211 |
6) CropCommand.py |
212 |
- QtImageViewer ������ �巡���Ͽ� ������ ������ �߶� ���� Command |
213 |
|
214 |
7) DefaultCommand.py |
215 |
- MainWindow ���� ����ϴ� QtImageViewer�� �д� ����� �����ϱ� ���� Command |
216 |
|
217 |
8) EraserCommand.py |
218 |
- ������ �ȼ��� �ش��ϴ� �κ��� ���(255, 255, 255) �ȼ��� ��ü |
219 |
- �ش� ��ư ���� �ִ� SpinBox �� ������ ũ� ���� ������� ��ü�Ǵ� ������ ũ�Ⱑ ���� |
220 |
|
221 |
9) FitImageCommand.py |
222 |
- ���� ���� �ɺ� ���� �� ���� �ܰ��� �ִ� ������(0, 0, 0) �ȼ��� ������ŭ �߶� ���� Command |
223 |
|
224 |
10) FlipImageCommand.py |
225 |
- �������� ���� �̹����� ���� �Ǵ� ���η� ������Ű�� ���� Command |
226 |
|
227 |
11) HandCommand.py |
228 |
- QtImageViewer ���� �д� ����� �����ϱ� ���� Command |
229 |
|
230 |
12) OriginalPointCommand.py |
231 |
- �ɺ� ����/���� �� Original Point�� �����ϱ� ���� Command |
232 |
- ���콺, �̵� �� Crosshair ǥ�� |
233 |
- Original Point�� ǥ���ϱ� ���� drawCircle() �� �����ϱ� ���� removeCircle() �� ��� static ���� ���� |
234 |
- Original Point�� 1���� ���� ���� |
235 |
|
236 |
13) PenCommand.py |
237 |
- ������ �ȼ��� �ش��ϴ� �κ��� ������(0, 0, 0) �ȼ��� ��ü |
238 |
- �ش� ��ư ���� �ִ� SpinBox �� ������ ũ� ���� ���������� ��ü�Ǵ� ������ ũ�Ⱑ ���� |
239 |
|
240 |
14) RemoveTextCommand.py |
241 |
- �ɺ� ����/���� �� ����� �� �ִ� Command |
242 |
- ����� �ؽ�Ʈ ������ ���(255, 255, 255) �ȼ��� ��ü |
243 |
|
244 |
15) RotateImageCommand.py |
245 |
- �������� ���� �̹����� �ð� �Ǵ� �ݽð� �������� ȸ����Ű�� ���� Command |
246 |
|
247 |
16) ZoomCommand.py |
248 |
- QtImageViewer ���� ������ �κ��� �������� ���� ������ŭ Ȯ�� �Ǵ� ����ϱ� ���� Command |