feat(ocr): full OCR pipeline with polygon annotations, training, and guided mode #232
@@ -15,7 +15,7 @@ interface Run {
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface TrainingInfo {
|
interface TrainingInfo {
|
||||||
availableBlocks?: number;
|
availableSegBlocks?: number;
|
||||||
ocrServiceAvailable?: boolean;
|
ocrServiceAvailable?: boolean;
|
||||||
runs?: Run[];
|
runs?: Run[];
|
||||||
}
|
}
|
||||||
@@ -29,7 +29,7 @@ let { trainingInfo }: Props = $props();
|
|||||||
let training = $state(false);
|
let training = $state(false);
|
||||||
let successMessage = $state<string | null>(null);
|
let successMessage = $state<string | null>(null);
|
||||||
|
|
||||||
const available = $derived(trainingInfo?.availableBlocks ?? 0);
|
const available = $derived(trainingInfo?.availableSegBlocks ?? 0);
|
||||||
const tooFewBlocks = $derived(available < 5);
|
const tooFewBlocks = $derived(available < 5);
|
||||||
const serviceDown = $derived(trainingInfo?.ocrServiceAvailable === false);
|
const serviceDown = $derived(trainingInfo?.ocrServiceAvailable === false);
|
||||||
const disabled = $derived(training || tooFewBlocks || serviceDown);
|
const disabled = $derived(training || tooFewBlocks || serviceDown);
|
||||||
|
|||||||
Reference in New Issue
Block a user