diff --git a/admin-lehrer/app/(admin)/ai/ocr-overlay/page.tsx b/admin-lehrer/app/(admin)/ai/ocr-overlay/page.tsx
index f89c0ba..3f149da 100644
--- a/admin-lehrer/app/(admin)/ai/ocr-overlay/page.tsx
+++ b/admin-lehrer/app/(admin)/ai/ocr-overlay/page.tsx
@@ -7,6 +7,7 @@ import { StepOrientation } from '@/components/ocr-pipeline/StepOrientation'
import { StepDeskew } from '@/components/ocr-pipeline/StepDeskew'
import { StepDewarp } from '@/components/ocr-pipeline/StepDewarp'
import { StepCrop } from '@/components/ocr-pipeline/StepCrop'
+import { StepStructureDetection } from '@/components/ocr-pipeline/StepStructureDetection'
import { StepRowDetection } from '@/components/ocr-pipeline/StepRowDetection'
import { StepWordRecognition } from '@/components/ocr-pipeline/StepWordRecognition'
import { OverlayReconstruction } from '@/components/ocr-overlay/OverlayReconstruction'
@@ -74,9 +75,13 @@ export default function OcrOverlayPage() {
const baseSteps = isKombi ? KOMBI_STEPS : PADDLE_DIRECT_STEPS
setMode(m)
- // For Kombi: if grid_editor_result exists, jump to grid editor step (5)
+ // For Kombi: if grid_editor_result exists, jump to grid editor step (6)
+ // If word_result exists but no grid, jump to grid editor (6)
+ // If structure_result exists, jump to kombi step (5)
const hasGrid = isKombi && data.grid_editor_result
- const activeStep = hasGrid ? 5 : 4
+ const hasWords = isKombi && data.word_result
+ const hasStructure = isKombi && data.structure_result
+ const activeStep = hasGrid ? 6 : hasWords ? 6 : hasStructure ? 5 : 4
setSteps(
baseSteps.map((s, i) => ({
...s,
@@ -246,6 +251,11 @@ export default function OcrOverlayPage() {
case 3:
return
case 4:
+ if (mode === 'kombi') {
+ return
+ }
+ return
+ case 5:
return mode === 'kombi' ? (
- ) : (
-
- )
- case 5:
+ ) : null
+ case 6:
return mode === 'kombi' ? (
) : null
@@ -521,7 +529,7 @@ export default function OcrOverlayPage() {
: 'text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300'
}`}
>
- Kombi (6 Schritte)
+ Kombi (7 Schritte)
diff --git a/admin-lehrer/app/(admin)/ai/ocr-overlay/types.ts b/admin-lehrer/app/(admin)/ai/ocr-overlay/types.ts
index ee01e10..f635924 100644
--- a/admin-lehrer/app/(admin)/ai/ocr-overlay/types.ts
+++ b/admin-lehrer/app/(admin)/ai/ocr-overlay/types.ts
@@ -69,6 +69,7 @@ export const KOMBI_STEPS: PipelineStep[] = [
{ id: 'deskew', name: 'Begradigung', icon: '📐', status: 'pending' },
{ id: 'dewarp', name: 'Entzerrung', icon: '🔧', status: 'pending' },
{ id: 'crop', name: 'Zuschneiden', icon: '✂️', status: 'pending' },
+ { id: 'structure', name: 'Struktur', icon: '🔍', status: 'pending' },
{ id: 'kombi', name: 'PP-OCRv5 + Tesseract', icon: '🔀', status: 'pending' },
{ id: 'grid-editor', name: 'Tabelle', icon: '📊', status: 'pending' },
]