Enhance HVideoTool's detection and restoration capabilities: introduced per-model overlay threshold settings and cross-model non-maximum suppression (NMS) to improve detection accuracy. Updated configuration management to support these features, and refined the UI for better user experience. Documentation in CLAUDE.md has been updated to reflect these changes.
This commit is contained in:
@@ -41,13 +41,23 @@ class ExtractDialog(QDialog):
|
||||
self.max_dim.setValue(0)
|
||||
self.max_dim.setSpecialValueText("оригинал")
|
||||
|
||||
self.quality = QSpinBox()
|
||||
self.quality.setRange(1, 100)
|
||||
self.quality.setValue(92)
|
||||
self.quality.setToolTip(
|
||||
"Качество JPEG (1–100). Ниже = быстрее кодирование и меньше файлы,\n"
|
||||
"но больше артефактов. 92 — хороший баланс."
|
||||
)
|
||||
|
||||
form = QFormLayout(self)
|
||||
form.addRow("Режим:", self.mode)
|
||||
form.addRow("Брать каждый N-й кадр:", self.step)
|
||||
form.addRow("Макс. сторона, px:", self.max_dim)
|
||||
form.addRow("Качество JPEG:", self.quality)
|
||||
hint = QLabel(
|
||||
"Ключевые кадры — в разы быстрее (декодируются только I-кадры),\n"
|
||||
"но реже по времени. Даунскейл уменьшает файлы и нагрузку на диск."
|
||||
"но реже по времени. Даунскейл и меньшее качество уменьшают файлы\n"
|
||||
"и нагрузку на диск (качество чуть ускоряет кодирование)."
|
||||
)
|
||||
hint.setWordWrap(True)
|
||||
form.addRow(hint)
|
||||
@@ -61,6 +71,11 @@ class ExtractDialog(QDialog):
|
||||
def _sync(self) -> None:
|
||||
self.step.setEnabled(not self.mode.currentData())
|
||||
|
||||
def options(self) -> tuple[bool, int, int]:
|
||||
"""Return (keyframes_only, step, max_dim)."""
|
||||
return bool(self.mode.currentData()), self.step.value(), self.max_dim.value()
|
||||
def options(self) -> tuple[bool, int, int, int]:
|
||||
"""Return (keyframes_only, step, max_dim, jpg_quality)."""
|
||||
return (
|
||||
bool(self.mode.currentData()),
|
||||
self.step.value(),
|
||||
self.max_dim.value(),
|
||||
self.quality.value(),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user