Interface OCRService
- All Known Implementing Classes:
OCRServiceImpl
public interface OCRService
Servico de OCR (reconhecimento optico de caracteres) de documentos.
Concentra a gestao dos modelos de OCR (ModeloDocumentoOCR) vinculados a um
ModeloDocumento, o mapeamento entre os campos do documento e as regioes
reconhecidas, a execucao do OCR sobre arquivos e a conversao de formatos necessaria
ao processamento.
Este e um dos servicos expostos aos scripts dos usuarios, portanto o contrato dos metodos publicos deve permanecer estavel.
- Author:
- DavinTI
-
Method Summary
Modifier and TypeMethodDescriptionArquivoatualizarAmostra(ModeloDocumentoOCR modelo, FileInfo amostra) Substitui o arquivo de amostra de um modelo de OCR existente.booleancanBeconverted(File source, FileType targetType) convertFile(File source, FileType targetType) Converte o arquivo de origem para o tipo de destino informado, quando suportado (ex.: normalizacao de formato antes do OCR).ModeloDocumentoOCRcriarModelo(ModeloDocumentoOCR modelo, Arquivo amostra, File amostraTempFile) Cria um novo modelo de OCR a partir de um documento de amostra.voiddefinirOrdemModeloOCR(Long modeloOCRID, int novaOrdem) doOCR(File source, Collection<ModeloDocumentoOCR> models) Executa o OCR do arquivo informado contra um conjunto especifico de modelos.doOCR(File source, Collection<ModeloDocumentoOCR> models, boolean stopOnSucess) doOCR(Path source, Collection<ModeloDocumentoOCR> models) doOCR(Path source, Collection<ModeloDocumentoOCR> models, boolean stopOnSucess) doOCRForAllDocumentModels(File source, ModeloDocumento document) Executa o OCR do arquivo informado contra todos os modelos de OCR vinculados ao documento informado.doOCRForAllDocumentModels(File source, ModeloDocumento document, boolean stopOnSucess) doOCRForAllDocumentModels(File source, String documentKey) doOCRForAllDocumentModels(File source, String documentKey, boolean stopOnSucess) doOCRForAllModels(File source) Executa o OCR do arquivo informado contra todos os modelos de OCR cadastrados no sistema.doOCRForAllModels(File source, boolean stopOnSucess) Executa o OCR contra todos os modelos cadastrados, com opcao de interromper o processamento assim que um modelo for reconhecido com sucesso.List<ModeloCampoDocumento> getCamposNaoMapeados(ModeloDocumentoOCR mapeamento) List<ModeloCampoDocumento> getCamposObrigatoriosNaoMapeados(ModeloDocumentoOCR mapeamento) getCountCamposNaoMapeados(ModeloDocumentoOCR mapeamento) getCountCamposObrigatoriosNaoMapeados(ModeloDocumentoOCR mapeamento) ModeloDocumentoOCRMapeamentoCampoModeloOCRgetMapeamentoCampo(ModeloDocumentoOCR documentoOCR, String campoId) List<MapeamentoCampoModeloOCR> getMapeamentos(ModeloDocumentoOCR documentoOCR) List<MapeamentoCampoModeloOCR> getMapeamentosCampo(ModeloDocumento modelo, String campoId) List<ModeloDocumentoOCR> getModelosAtivosParaDocumento(ModeloDocumento modelo) List<ModeloDocumentoOCR> getModelosParaDocumento(ModeloDocumento modelo) StatusModeloOCRgetStatus(ModeloDocumentoOCR mapeamento) voidrefreshStatus(ModeloDocumentoOCR modelo) Recalcula e persiste o status do modelo de OCR (ex.: completo, com pendencias de mapeamento) com base no estado atual de seus mapeamentos.voidrefreshStatus(ModeloDocumentoOCR modelo, List<OCRResult> results) Recalcula e persiste o status do modelo de OCR considerando tambem os resultados de OCR informados.voidrefreshStatusForModels(ModeloDocumento documento) voidrefreshStatusForModels(String documentKey) voidremoverMapeamento(MapeamentoCampoModeloOCR mapeamento) ModeloDocumentoOCRsalvarModelo(ModeloDocumentoOCR modelo) MapeamentoCampoModeloOCRsaveMapeamento(MapeamentoCampoModeloOCR mapeamento) voidsaveMapeamentos(Collection<MapeamentoCampoModeloOCR> mapeamentos) store(OCRResult result, StoreOptions options) Persiste um resultado de OCR aplicando as opcoes de armazenamento informadas (ex.: sobrescrita de campos ja preenchidos).tryResolveType(File source) Tenta resolver o tipo do arquivo informado a partir de seu conteudo.
-
Method Details
-
criarModelo
Cria um novo modelo de OCR a partir de um documento de amostra. O arquivo de amostra e persistido e usado como referencia para o mapeamento de campos.- Parameters:
modelo- configuracao inicial do modelo de OCRamostra- metadados do arquivo de amostraamostraTempFile- arquivo fisico de amostra em area temporaria- Returns:
- o modelo de OCR criado e persistido
-
salvarModelo
ModeloDocumentoOCR salvarModelo(ModeloDocumentoOCR modelo) -
atualizarAmostra
Substitui o arquivo de amostra de um modelo de OCR existente.- Parameters:
modelo- modelo de OCR a ter a amostra atualizadaamostra- novo arquivo de amostra- Returns:
- metadados do arquivo de amostra persistido
-
getModelosParaDocumento
-
getModelosAtivosParaDocumento
-
getMapeamentos
-
saveMapeamento
MapeamentoCampoModeloOCR saveMapeamento(MapeamentoCampoModeloOCR mapeamento) -
getCountCamposNaoMapeados
-
getCamposNaoMapeados
-
getCountCamposObrigatoriosNaoMapeados
-
getCamposObrigatoriosNaoMapeados
-
getStatus
StatusModeloOCR getStatus(ModeloDocumentoOCR mapeamento) -
refreshStatus
void refreshStatus(ModeloDocumentoOCR modelo) Recalcula e persiste o status do modelo de OCR (ex.: completo, com pendencias de mapeamento) com base no estado atual de seus mapeamentos.- Parameters:
modelo- modelo de OCR a ter o status reavaliado
-
refreshStatus
Recalcula e persiste o status do modelo de OCR considerando tambem os resultados de OCR informados.- Parameters:
modelo- modelo de OCR a ter o status reavaliadoresults- resultados de OCR a serem levados em conta na avaliacao
-
refreshStatusForModels
void refreshStatusForModels(ModeloDocumento documento) -
refreshStatusForModels
-
saveMapeamentos
-
removerMapeamento
void removerMapeamento(MapeamentoCampoModeloOCR mapeamento) -
getMapeamentoCampo
-
getMapeamentosCampo
-
getDocumentoOCRPorId
-
doOCRForAllModels
Executa o OCR do arquivo informado contra todos os modelos de OCR cadastrados no sistema.- Parameters:
source- arquivo a ser processado- Returns:
- lista de resultados, um por modelo avaliado
- Throws:
OCRException- em caso de falha no processamento do OCR
-
doOCRForAllDocumentModels
List<OCRResult> doOCRForAllDocumentModels(File source, ModeloDocumento document) throws OCRException Executa o OCR do arquivo informado contra todos os modelos de OCR vinculados ao documento informado.- Parameters:
source- arquivo a ser processadodocument- documento cujos modelos de OCR serao usados- Returns:
- lista de resultados, um por modelo avaliado
- Throws:
OCRException- em caso de falha no processamento do OCR
-
doOCRForAllDocumentModels
- Throws:
OCRException
-
doOCR
Executa o OCR do arquivo informado contra um conjunto especifico de modelos.- Parameters:
source- arquivo a ser processadomodels- modelos de OCR a serem aplicados- Returns:
- lista de resultados, um por modelo avaliado
- Throws:
OCRException- em caso de falha no processamento do OCR
-
doOCR
- Throws:
OCRException
-
doOCRForAllModels
Executa o OCR contra todos os modelos cadastrados, com opcao de interromper o processamento assim que um modelo for reconhecido com sucesso.- Parameters:
source- arquivo a ser processadostopOnSucess- setrue, interrompe ao primeiro modelo bem-sucedido, evitando avaliar os demais- Returns:
- lista de resultados ate o ponto de parada
- Throws:
OCRException- em caso de falha no processamento do OCR
-
doOCRForAllDocumentModels
List<OCRResult> doOCRForAllDocumentModels(File source, ModeloDocumento document, boolean stopOnSucess) throws OCRException - Throws:
OCRException
-
doOCRForAllDocumentModels
List<OCRResult> doOCRForAllDocumentModels(File source, String documentKey, boolean stopOnSucess) throws OCRException - Throws:
OCRException
-
doOCR
List<OCRResult> doOCR(File source, Collection<ModeloDocumentoOCR> models, boolean stopOnSucess) throws OCRException - Throws:
OCRException
-
doOCR
List<OCRResult> doOCR(Path source, Collection<ModeloDocumentoOCR> models, boolean stopOnSucess) throws OCRException - Throws:
OCRException
-
convertFile
Converte o arquivo de origem para o tipo de destino informado, quando suportado (ex.: normalizacao de formato antes do OCR).- Parameters:
source- arquivo de origemtargetType- tipo de arquivo desejado para a saida- Returns:
- arquivo convertido
- Throws:
OCRException- se a conversao nao for suportada ou falhar- See Also:
-
tryResolveType
Tenta resolver o tipo do arquivo informado a partir de seu conteudo.- Parameters:
source- arquivo cujo tipo sera detectado- Returns:
- tipo de arquivo detectado
- Throws:
OCRException- se o tipo nao puder ser determinado
-
canBeconverted
- Throws:
OCRException
-
definirOrdemModeloOCR
-
store
-
store
Persiste um resultado de OCR aplicando as opcoes de armazenamento informadas (ex.: sobrescrita de campos ja preenchidos).- Parameters:
result- resultado de OCR a persistiroptions- opcoes que controlam como o resultado e gravado- Returns:
- id do registro persistido
-