mirror of
https://github.com/283375/arcaea-offline-pyside-ui.git
synced 2025-07-01 04:16:26 +00:00
wip: DeviceV2AutoRois
support
This commit is contained in:
@ -6,13 +6,17 @@ import cv2
|
||||
from arcaea_offline_ocr.device.v1.definition import DeviceV1
|
||||
from arcaea_offline_ocr.device.v2.definition import DeviceV2
|
||||
from arcaea_offline_ocr.sift_db import SIFTDatabase
|
||||
from PySide6.QtCore import Slot
|
||||
from PySide6.QtCore import Qt, Slot
|
||||
from PySide6.QtWidgets import QFileDialog, QWidget
|
||||
|
||||
from ui.designer.tabs.tabOcr.tabOcr_Device_ui import Ui_TabOcr_Device
|
||||
from ui.extends.components.ocrQueue import OcrQueueModel
|
||||
from ui.extends.shared.settings import Settings
|
||||
from ui.extends.tabs.tabOcr.tabOcr_Device import ScoreConverter, TabDeviceV2OcrRunnable
|
||||
from ui.extends.tabs.tabOcr.tabOcr_Device import (
|
||||
ScoreConverter,
|
||||
TabDeviceV2AutoRoisOcrRunnable,
|
||||
TabDeviceV2OcrRunnable,
|
||||
)
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -23,10 +27,6 @@ class TabOcr_Device(Ui_TabOcr_Device, QWidget):
|
||||
self.setupUi(self)
|
||||
self.openWizardButton.setEnabled(False)
|
||||
|
||||
self.deviceComboBox.currentIndexChanged.connect(
|
||||
self.changeDeviceDepStackedWidget
|
||||
)
|
||||
|
||||
self.deviceFileSelector.filesSelected.connect(self.deviceFileSelected)
|
||||
self.knnModelSelector.filesSelected.connect(self.knnModelFileSelected)
|
||||
self.tesseractFileSelector.filesSelected.connect(
|
||||
@ -52,6 +52,22 @@ class TabOcr_Device(Ui_TabOcr_Device, QWidget):
|
||||
# wizard.open()
|
||||
pass
|
||||
|
||||
@Slot()
|
||||
def on_deviceUseAutoFactorCheckBox_stateChanged(self):
|
||||
checkState = self.deviceUseAutoFactorCheckBox.checkState()
|
||||
if checkState == Qt.CheckState.Checked:
|
||||
self.deviceDependenciesStackedWidget.setCurrentIndex(1)
|
||||
self.deviceComboBox.setCurrentIndex(-1)
|
||||
self.deviceFileSelector.setEnabled(False)
|
||||
self.deviceComboBox.setEnabled(False)
|
||||
else:
|
||||
self.deviceFileSelector.setEnabled(True)
|
||||
self.deviceComboBox.setEnabled(True)
|
||||
|
||||
@Slot()
|
||||
def on_deviceComboBox_currentIndexChanged(self):
|
||||
self.changeDeviceDepStackedWidget()
|
||||
|
||||
def changeDeviceDepStackedWidget(self):
|
||||
device = self.deviceComboBox.currentData()
|
||||
if isinstance(device, (DeviceV1, DeviceV2)):
|
||||
@ -92,12 +108,19 @@ class TabOcr_Device(Ui_TabOcr_Device, QWidget):
|
||||
for row in range(self.ocrQueueModel.rowCount()):
|
||||
index = self.ocrQueueModel.index(row, 0)
|
||||
imagePath = index.data(OcrQueueModel.ImagePathRole)
|
||||
runnable = TabDeviceV2OcrRunnable(
|
||||
imagePath,
|
||||
self.deviceComboBox.currentData(),
|
||||
self.knnModel,
|
||||
self.siftDatabase,
|
||||
)
|
||||
if self.deviceUseAutoFactorCheckBox.checkState() == Qt.CheckState.Checked:
|
||||
runnable = TabDeviceV2AutoRoisOcrRunnable(
|
||||
imagePath,
|
||||
self.knnModel,
|
||||
self.siftDatabase,
|
||||
)
|
||||
else:
|
||||
runnable = TabDeviceV2OcrRunnable(
|
||||
imagePath,
|
||||
self.deviceComboBox.currentData(),
|
||||
self.knnModel,
|
||||
self.siftDatabase,
|
||||
)
|
||||
self.ocrQueueModel.setData(index, runnable, OcrQueueModel.OcrRunnableRole)
|
||||
self.ocrQueueModel.setData(
|
||||
index,
|
||||
|
Reference in New Issue
Block a user