개정판 02519509
issue 366: 텍스트 영역 인식 및 텍스트 인식 속도 개선
issue 479: 심볼 인식 후 hit ratio를 툴팁에 표기
기타 - tesseract version 표기
Change-Id: I7c41eb524de4919bce6aed18c361dcacc09f8aeb
DTI_PID/DTI_PID/Configuration_UI.py | ||
---|---|---|
13 | 13 |
class Ui_ConfigurationDialog(object): |
14 | 14 |
def setupUi(self, ConfigurationDialog): |
15 | 15 |
ConfigurationDialog.setObjectName("ConfigurationDialog") |
16 |
ConfigurationDialog.resize(632, 616)
|
|
16 |
ConfigurationDialog.resize(648, 631)
|
|
17 | 17 |
font = QtGui.QFont() |
18 | 18 |
font.setFamily("맑은 고딕") |
19 | 19 |
ConfigurationDialog.setFont(font) |
... | ... | |
90 | 90 |
self.gridLayout_14.setObjectName("gridLayout_14") |
91 | 91 |
self.gridLayout_25 = QtWidgets.QGridLayout() |
92 | 92 |
self.gridLayout_25.setObjectName("gridLayout_25") |
93 |
self.maxTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText) |
|
94 |
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) |
|
95 |
sizePolicy.setHorizontalStretch(0) |
|
96 |
sizePolicy.setVerticalStretch(0) |
|
97 |
sizePolicy.setHeightForWidth(self.maxTextSizeSpinBox.sizePolicy().hasHeightForWidth()) |
|
98 |
self.maxTextSizeSpinBox.setSizePolicy(sizePolicy) |
|
99 |
self.maxTextSizeSpinBox.setProperty("value", 60) |
|
100 |
self.maxTextSizeSpinBox.setObjectName("maxTextSizeSpinBox") |
|
101 |
self.gridLayout_25.addWidget(self.maxTextSizeSpinBox, 4, 3, 1, 1) |
|
102 | 93 |
self.minTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText) |
103 | 94 |
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) |
104 | 95 |
sizePolicy.setHorizontalStretch(0) |
... | ... | |
108 | 99 |
self.minTextSizeSpinBox.setMaximumSize(QtCore.QSize(16777215, 16777215)) |
109 | 100 |
self.minTextSizeSpinBox.setProperty("value", 30) |
110 | 101 |
self.minTextSizeSpinBox.setObjectName("minTextSizeSpinBox") |
111 |
self.gridLayout_25.addWidget(self.minTextSizeSpinBox, 4, 1, 1, 1) |
|
112 |
self.label_18 = QtWidgets.QLabel(self.groupBoxText) |
|
113 |
self.label_18.setObjectName("label_18") |
|
114 |
self.gridLayout_25.addWidget(self.label_18, 4, 2, 1, 1) |
|
115 |
self.label_17 = QtWidgets.QLabel(self.groupBoxText) |
|
116 |
self.label_17.setObjectName("label_17") |
|
117 |
self.gridLayout_25.addWidget(self.label_17, 4, 0, 1, 1) |
|
102 |
self.gridLayout_25.addWidget(self.minTextSizeSpinBox, 5, 1, 1, 1) |
|
103 |
self.maxTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText) |
|
104 |
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) |
|
105 |
sizePolicy.setHorizontalStretch(0) |
|
106 |
sizePolicy.setVerticalStretch(0) |
|
107 |
sizePolicy.setHeightForWidth(self.maxTextSizeSpinBox.sizePolicy().hasHeightForWidth()) |
|
108 |
self.maxTextSizeSpinBox.setSizePolicy(sizePolicy) |
|
109 |
self.maxTextSizeSpinBox.setProperty("value", 60) |
|
110 |
self.maxTextSizeSpinBox.setObjectName("maxTextSizeSpinBox") |
|
111 |
self.gridLayout_25.addWidget(self.maxTextSizeSpinBox, 5, 3, 1, 1) |
|
118 | 112 |
self.label_21 = QtWidgets.QLabel(self.groupBoxText) |
119 | 113 |
self.label_21.setObjectName("label_21") |
120 |
self.gridLayout_25.addWidget(self.label_21, 3, 2, 1, 1) |
|
121 |
self.spinBoxShrinkSize = QtWidgets.QSpinBox(self.groupBoxText) |
|
122 |
self.spinBoxShrinkSize.setMinimumSize(QtCore.QSize(100, 0)) |
|
123 |
self.spinBoxShrinkSize.setObjectName("spinBoxShrinkSize") |
|
124 |
self.gridLayout_25.addWidget(self.spinBoxShrinkSize, 3, 3, 1, 1) |
|
114 |
self.gridLayout_25.addWidget(self.label_21, 4, 2, 1, 1) |
|
115 |
self.label_17 = QtWidgets.QLabel(self.groupBoxText) |
|
116 |
self.label_17.setObjectName("label_17") |
|
117 |
self.gridLayout_25.addWidget(self.label_17, 5, 0, 1, 1) |
|
118 |
self.label_18 = QtWidgets.QLabel(self.groupBoxText) |
|
119 |
self.label_18.setObjectName("label_18") |
|
120 |
self.gridLayout_25.addWidget(self.label_18, 5, 2, 1, 1) |
|
125 | 121 |
self.spinBoxExpandSize = QtWidgets.QSpinBox(self.groupBoxText) |
126 | 122 |
self.spinBoxExpandSize.setMinimumSize(QtCore.QSize(100, 0)) |
127 | 123 |
self.spinBoxExpandSize.setObjectName("spinBoxExpandSize") |
128 |
self.gridLayout_25.addWidget(self.spinBoxExpandSize, 3, 1, 1, 1) |
|
124 |
self.gridLayout_25.addWidget(self.spinBoxExpandSize, 4, 1, 1, 1) |
|
125 |
self.spinBoxShrinkSize = QtWidgets.QSpinBox(self.groupBoxText) |
|
126 |
self.spinBoxShrinkSize.setMinimumSize(QtCore.QSize(100, 0)) |
|
127 |
self.spinBoxShrinkSize.setObjectName("spinBoxShrinkSize") |
|
128 |
self.gridLayout_25.addWidget(self.spinBoxShrinkSize, 4, 3, 1, 1) |
|
129 | 129 |
self.label_19 = QtWidgets.QLabel(self.groupBoxText) |
130 | 130 |
self.label_19.setObjectName("label_19") |
131 | 131 |
self.gridLayout_25.addWidget(self.label_19, 0, 0, 1, 1) |
132 |
self.label_20 = QtWidgets.QLabel(self.groupBoxText) |
|
133 |
self.label_20.setObjectName("label_20") |
|
134 |
self.gridLayout_25.addWidget(self.label_20, 4, 0, 1, 1) |
|
132 | 135 |
self.label_7 = QtWidgets.QLabel(self.groupBoxText) |
133 | 136 |
self.label_7.setObjectName("label_7") |
134 | 137 |
self.gridLayout_25.addWidget(self.label_7, 1, 0, 1, 1) |
135 |
self.label_20 = QtWidgets.QLabel(self.groupBoxText) |
|
136 |
self.label_20.setObjectName("label_20") |
|
137 |
self.gridLayout_25.addWidget(self.label_20, 3, 0, 1, 1) |
|
138 | 138 |
self.label_37 = QtWidgets.QLabel(self.groupBoxText) |
139 | 139 |
self.label_37.setObjectName("label_37") |
140 |
self.gridLayout_25.addWidget(self.label_37, 2, 0, 1, 1)
|
|
140 |
self.gridLayout_25.addWidget(self.label_37, 3, 0, 1, 1)
|
|
141 | 141 |
self.label_22 = QtWidgets.QLabel(self.groupBoxText) |
142 | 142 |
self.label_22.setObjectName("label_22") |
143 |
self.gridLayout_25.addWidget(self.label_22, 5, 0, 1, 1) |
|
143 |
self.gridLayout_25.addWidget(self.label_22, 6, 0, 1, 1) |
|
144 |
self.lineEditWhiteCharList = QtWidgets.QLineEdit(self.groupBoxText) |
|
145 |
self.lineEditWhiteCharList.setObjectName("lineEditWhiteCharList") |
|
146 |
self.gridLayout_25.addWidget(self.lineEditWhiteCharList, 1, 1, 1, 3) |
|
147 |
self.lineEditSingleText = QtWidgets.QLineEdit(self.groupBoxText) |
|
148 |
self.lineEditSingleText.setObjectName("lineEditSingleText") |
|
149 |
self.gridLayout_25.addWidget(self.lineEditSingleText, 3, 1, 1, 1) |
|
144 | 150 |
self.spinBoxMergeSize = QtWidgets.QSpinBox(self.groupBoxText) |
145 | 151 |
self.spinBoxMergeSize.setMinimumSize(QtCore.QSize(100, 0)) |
146 | 152 |
self.spinBoxMergeSize.setObjectName("spinBoxMergeSize") |
147 |
self.gridLayout_25.addWidget(self.spinBoxMergeSize, 5, 1, 1, 1)
|
|
153 |
self.gridLayout_25.addWidget(self.spinBoxMergeSize, 6, 1, 1, 1)
|
|
148 | 154 |
self.comboBoxOCRData = QtWidgets.QComboBox(self.groupBoxText) |
149 | 155 |
self.comboBoxOCRData.setMinimumSize(QtCore.QSize(200, 0)) |
150 | 156 |
self.comboBoxOCRData.setMaximumSize(QtCore.QSize(200, 16777215)) |
151 | 157 |
self.comboBoxOCRData.setObjectName("comboBoxOCRData") |
152 | 158 |
self.gridLayout_25.addWidget(self.comboBoxOCRData, 0, 1, 1, 1) |
153 |
self.lineEditSingleText = QtWidgets.QLineEdit(self.groupBoxText) |
|
154 |
self.lineEditSingleText.setObjectName("lineEditSingleText") |
|
155 |
self.gridLayout_25.addWidget(self.lineEditSingleText, 2, 1, 1, 1) |
|
156 |
self.lineEditWhiteCharList = QtWidgets.QLineEdit(self.groupBoxText) |
|
157 |
self.lineEditWhiteCharList.setObjectName("lineEditWhiteCharList") |
|
158 |
self.gridLayout_25.addWidget(self.lineEditWhiteCharList, 1, 1, 1, 3) |
|
159 |
self.label_39 = QtWidgets.QLabel(self.groupBoxText) |
|
160 |
self.label_39.setObjectName("label_39") |
|
161 |
self.gridLayout_25.addWidget(self.label_39, 2, 0, 1, 1) |
|
162 |
self.comboBoxPageSegmentationModes = QtWidgets.QComboBox(self.groupBoxText) |
|
163 |
self.comboBoxPageSegmentationModes.setObjectName("comboBoxPageSegmentationModes") |
|
164 |
self.gridLayout_25.addWidget(self.comboBoxPageSegmentationModes, 2, 1, 1, 3) |
|
165 |
self.labelTesseractVersion = QtWidgets.QLabel(self.groupBoxText) |
|
166 |
self.labelTesseractVersion.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) |
|
167 |
self.labelTesseractVersion.setObjectName("labelTesseractVersion") |
|
168 |
self.gridLayout_25.addWidget(self.labelTesseractVersion, 0, 2, 1, 2) |
|
159 | 169 |
self.gridLayout_14.addLayout(self.gridLayout_25, 0, 0, 1, 1) |
160 | 170 |
self.gridLayout_2.addWidget(self.groupBoxText, 0, 1, 1, 1) |
161 | 171 |
self.groupBoxAttribute = QtWidgets.QGroupBox(self.Recognition) |
... | ... | |
647 | 657 |
self.buttonBox.accepted.connect(ConfigurationDialog.accept) |
648 | 658 |
self.buttonBox.rejected.connect(ConfigurationDialog.reject) |
649 | 659 |
QtCore.QMetaObject.connectSlotsByName(ConfigurationDialog) |
660 |
ConfigurationDialog.setTabOrder(self.comboBoxOCRData, self.lineEditWhiteCharList) |
|
661 |
ConfigurationDialog.setTabOrder(self.lineEditWhiteCharList, self.comboBoxPageSegmentationModes) |
|
662 |
ConfigurationDialog.setTabOrder(self.comboBoxPageSegmentationModes, self.lineEditSingleText) |
|
663 |
ConfigurationDialog.setTabOrder(self.lineEditSingleText, self.spinBoxExpandSize) |
|
664 |
ConfigurationDialog.setTabOrder(self.spinBoxExpandSize, self.spinBoxShrinkSize) |
|
665 |
ConfigurationDialog.setTabOrder(self.spinBoxShrinkSize, self.minTextSizeSpinBox) |
|
666 |
ConfigurationDialog.setTabOrder(self.minTextSizeSpinBox, self.maxTextSizeSpinBox) |
|
667 |
ConfigurationDialog.setTabOrder(self.maxTextSizeSpinBox, self.spinBoxMergeSize) |
|
668 |
ConfigurationDialog.setTabOrder(self.spinBoxMergeSize, self.lineEditSizeDelimiter) |
|
669 |
ConfigurationDialog.setTabOrder(self.lineEditSizeDelimiter, self.doubleSpinBoxDetectionRange) |
|
670 |
ConfigurationDialog.setTabOrder(self.doubleSpinBoxDetectionRange, self.spinBoxFlowMarkPosition) |
|
671 |
ConfigurationDialog.setTabOrder(self.spinBoxFlowMarkPosition, self.spinBoxFlowMarkLength) |
|
672 |
ConfigurationDialog.setTabOrder(self.spinBoxFlowMarkLength, self.spinBoxMinimumSize) |
|
673 |
ConfigurationDialog.setTabOrder(self.spinBoxMinimumSize, self.spinBoxUnrecognitionIgnoreStep) |
|
674 |
ConfigurationDialog.setTabOrder(self.spinBoxUnrecognitionIgnoreStep, self.spinBoxDilateSize) |
|
675 |
ConfigurationDialog.setTabOrder(self.spinBoxDilateSize, self.spinBoxFlatSize) |
|
676 |
ConfigurationDialog.setTabOrder(self.spinBoxFlatSize, self.radioButtonMode1) |
|
677 |
ConfigurationDialog.setTabOrder(self.radioButtonMode1, self.radioButtonMode2) |
|
678 |
ConfigurationDialog.setTabOrder(self.radioButtonMode2, self.spinBoxMinArea) |
|
679 |
ConfigurationDialog.setTabOrder(self.spinBoxMinArea, self.spinBoxMaxArea) |
|
680 |
ConfigurationDialog.setTabOrder(self.spinBoxMaxArea, self.spinBoxWidth) |
|
681 |
ConfigurationDialog.setTabOrder(self.spinBoxWidth, self.spinBoxHeight) |
|
682 |
ConfigurationDialog.setTabOrder(self.spinBoxHeight, self.smallLineMinLengthSpinBox) |
|
683 |
ConfigurationDialog.setTabOrder(self.smallLineMinLengthSpinBox, self.spinBoxLengthToConnectLine) |
|
684 |
ConfigurationDialog.setTabOrder(self.spinBoxLengthToConnectLine, self.comboBoxLineType) |
|
685 |
ConfigurationDialog.setTabOrder(self.comboBoxLineType, self.radioButtonDiagonalYes) |
|
686 |
ConfigurationDialog.setTabOrder(self.radioButtonDiagonalYes, self.radioButtonDiagonalNo) |
|
687 |
ConfigurationDialog.setTabOrder(self.radioButtonDiagonalNo, self.pushButtonLineNoAttribute) |
|
688 |
ConfigurationDialog.setTabOrder(self.pushButtonLineNoAttribute, self.pushButtonAddProperty) |
|
689 |
ConfigurationDialog.setTabOrder(self.pushButtonAddProperty, self.pushButtonDeleteProperty) |
|
690 |
ConfigurationDialog.setTabOrder(self.pushButtonDeleteProperty, self.listWidgetLineNo) |
|
691 |
ConfigurationDialog.setTabOrder(self.listWidgetLineNo, self.pushButtonTagNoAttribute) |
|
692 |
ConfigurationDialog.setTabOrder(self.pushButtonTagNoAttribute, self.pushButtonAddTagProperty) |
|
693 |
ConfigurationDialog.setTabOrder(self.pushButtonAddTagProperty, self.pushButtonDeleteTagProperty) |
|
694 |
ConfigurationDialog.setTabOrder(self.pushButtonDeleteTagProperty, self.listWidgetTagNo) |
|
695 |
ConfigurationDialog.setTabOrder(self.listWidgetTagNo, self.checkBoxNoteNoSymbolName) |
|
696 |
ConfigurationDialog.setTabOrder(self.checkBoxNoteNoSymbolName, self.lineEditNoteNoSymbolName) |
|
697 |
ConfigurationDialog.setTabOrder(self.lineEditNoteNoSymbolName, self.lineEditNoteNoExpression) |
|
698 |
ConfigurationDialog.setTabOrder(self.lineEditNoteNoExpression, self.lineEditOPCFromPrefix) |
|
699 |
ConfigurationDialog.setTabOrder(self.lineEditOPCFromPrefix, self.lineEditOPCToPrefix) |
|
700 |
ConfigurationDialog.setTabOrder(self.lineEditOPCToPrefix, self.lineEditByVendor) |
|
701 |
ConfigurationDialog.setTabOrder(self.lineEditByVendor, self.lineEditDrainSize) |
|
702 |
ConfigurationDialog.setTabOrder(self.lineEditDrainSize, self.lineEdit_2) |
|
650 | 703 |
ConfigurationDialog.setTabOrder(self.lineEdit_2, self.tableWidgetLineTypes) |
651 |
ConfigurationDialog.setTabOrder(self.tableWidgetLineTypes, self.tabWidget) |
|
704 |
ConfigurationDialog.setTabOrder(self.tableWidgetLineTypes, self.pushButtonInstrumentColor) |
|
705 |
ConfigurationDialog.setTabOrder(self.pushButtonInstrumentColor, self.pushButtonEquipColor) |
|
706 |
ConfigurationDialog.setTabOrder(self.pushButtonEquipColor, self.spinBoxSymbolOpacity) |
|
707 |
ConfigurationDialog.setTabOrder(self.spinBoxSymbolOpacity, self.fontComboBox) |
|
708 |
ConfigurationDialog.setTabOrder(self.fontComboBox, self.radioButtonAutoSize) |
|
709 |
ConfigurationDialog.setTabOrder(self.radioButtonAutoSize, self.radioButtonFixedSize) |
|
710 |
ConfigurationDialog.setTabOrder(self.radioButtonFixedSize, self.spinBoxFontSize) |
|
711 |
ConfigurationDialog.setTabOrder(self.spinBoxFontSize, self.radioButtonRandom) |
|
712 |
ConfigurationDialog.setTabOrder(self.radioButtonRandom, self.radioButtonProperty) |
|
713 |
ConfigurationDialog.setTabOrder(self.radioButtonProperty, self.comboBoxColorOption) |
|
714 |
ConfigurationDialog.setTabOrder(self.comboBoxColorOption, self.tableWidgetColorProperty) |
|
715 |
ConfigurationDialog.setTabOrder(self.tableWidgetColorProperty, self.radioButtonLoadXmlYes) |
|
716 |
ConfigurationDialog.setTabOrder(self.radioButtonLoadXmlYes, self.radioButtonLoadXmlNo) |
|
717 |
ConfigurationDialog.setTabOrder(self.radioButtonLoadXmlNo, self.radioButtonSaveUnknownYes) |
|
718 |
ConfigurationDialog.setTabOrder(self.radioButtonSaveUnknownYes, self.radioButtonSaveUnknownNo) |
|
719 |
ConfigurationDialog.setTabOrder(self.radioButtonSaveUnknownNo, self.pushButtonClearAccessInfo) |
|
720 |
ConfigurationDialog.setTabOrder(self.pushButtonClearAccessInfo, self.radioButtonBackTextYes) |
|
721 |
ConfigurationDialog.setTabOrder(self.radioButtonBackTextYes, self.radioButtonBackTextNo) |
|
722 |
ConfigurationDialog.setTabOrder(self.radioButtonBackTextNo, self.tabWidget) |
|
652 | 723 |
|
653 | 724 |
def retranslateUi(self, ConfigurationDialog): |
654 | 725 |
_translate = QtCore.QCoreApplication.translate |
... | ... | |
662 | 733 |
self.radioButtonMode1.setText(_translate("ConfigurationDialog", "Default")) |
663 | 734 |
self.radioButtonMode2.setText(_translate("ConfigurationDialog", "Advanced")) |
664 | 735 |
self.groupBoxText.setTitle(_translate("ConfigurationDialog", "Text Detection")) |
665 |
self.label_18.setText(_translate("ConfigurationDialog", "Maximum Text Size : ")) |
|
666 |
self.label_17.setText(_translate("ConfigurationDialog", "Minimum Text Size : ")) |
|
667 | 736 |
self.label_21.setText(_translate("ConfigurationDialog", "Erosion Size : ")) |
737 |
self.label_17.setText(_translate("ConfigurationDialog", "Minimum Text Size : ")) |
|
738 |
self.label_18.setText(_translate("ConfigurationDialog", "Maximum Text Size : ")) |
|
668 | 739 |
self.label_19.setText(_translate("ConfigurationDialog", "OCR Source : ")) |
669 |
self.label_7.setText(_translate("ConfigurationDialog", "Detected string : ")) |
|
670 | 740 |
self.label_20.setText(_translate("ConfigurationDialog", "Expansion Size : ")) |
741 |
self.label_7.setText(_translate("ConfigurationDialog", "Detected string : ")) |
|
671 | 742 |
self.label_37.setText(_translate("ConfigurationDialog", "Allowed Single Text : ")) |
672 | 743 |
self.label_22.setText(_translate("ConfigurationDialog", "Merge Size : ")) |
744 |
self.label_39.setText(_translate("ConfigurationDialog", "Page segmentations modes")) |
|
745 |
self.labelTesseractVersion.setText(_translate("ConfigurationDialog", "TextLabel")) |
|
673 | 746 |
self.groupBoxAttribute.setTitle(_translate("ConfigurationDialog", "Attribute")) |
674 | 747 |
self.label_6.setText(_translate("ConfigurationDialog", "Size Delimiter : ")) |
675 | 748 |
self.label_24.setText(_translate("ConfigurationDialog", "Line Flow Mark Position(Percent) : ")) |
내보내기 Unified diff