> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ajuste de los parámetros de preprocesamiento, análisis, reconocimiento y síntesis

> Ajuste los parámetros de ABBYY FineReader Engine para el preprocesamiento, el análisis, el reconocimiento y la síntesis de páginas a fin de equilibrar la precisión del Reconocimiento óptico de caracteres (OCR), la velocidad y la calidad del resultado.

El procesamiento de documentos en ABBYY FineReader Engine consta de varias etapas: preprocesamiento de páginas, análisis, reconocimiento, síntesis de páginas, síntesis de documentos y exportación. Esta sección trata sobre el preprocesamiento de páginas, el análisis, el reconocimiento y la síntesis de páginas y documentos. Para obtener información detallada sobre los parámetros de exportación, consulte [ajuste de los parámetros de exportación](/es/fine-reader/engine/guided-tour/advanced-techniques/tuning-export-parameters).

Veamos las etapas del procesamiento en orden:

1. Preprocesamiento de páginas<br />Durante esta etapa, FineReader Engine mejora automáticamente la calidad de la imagen y corrige defectos que pueden interferir con el Reconocimiento óptico de caracteres (OCR): orientación de la página, imágenes invertidas y distorsiones geométricas.
2. Análisis de diseño<br />Durante el análisis, FineReader Engine localiza las áreas que contienen distintos tipos de datos. Estas áreas se denominan "bloques".
3. Reconocimiento<br />Las partes de la imagen que se encuentran dentro de los bloques se reconocen de formas que dependen del tipo de bloque.
4. Síntesis de página<br />Se detectan el texto y los colores de fondo, los hipervínculos y otros elementos de formato.
5. Síntesis de documentos<br />Por último, se recrean los estilos de fuente y la estructura lógica del documento: FineReader Engine detecta los encabezados del documento reconocido, reconstruye la tabla de contenido, detecta las leyendas de imágenes y tablas, así como otros elementos de la estructura del documento.

Antes del procesamiento, puede configurar los parámetros de preprocesamiento, análisis, reconocimiento y síntesis de páginas con ayuda de los objetos de parámetros. El objeto principal que proporciona acceso a todos los parámetros de procesamiento es el objeto [DocumentProcessingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams). Tiene un conjunto de subobjetos que influyen en distintas etapas del procesamiento.

Según la etapa de procesamiento, se puede pasar a los métodos de procesamiento como parámetro de entrada el puntero a un objeto DocumentProcessingParams o bien punteros a sus subobjetos, lo que permite influir en los resultados del procesamiento. Los objetos [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument) y [FRPage](/es/fine-reader/engine/api-reference/document-related-objects/frpage) proporcionan métodos de preprocesamiento, análisis, reconocimiento y síntesis de páginas.

Los procesos de preprocesamiento, análisis, reconocimiento y síntesis de páginas también se pueden ajustar mediante perfiles, y los [escenarios](/es/fine-reader/engine/guided-tour/basic-usage-scenarios-implementation) más habituales ya están cubiertos por perfiles predefinidos bien probados. Consulte [uso de perfiles](/es/fine-reader/engine/guided-tour/advanced-techniques/working-with-profiles) para obtener más información.

<div id="page-processing">
  ## Procesamiento de páginas
</div>

Para establecer los parámetros de procesamiento de cada página, utilice las propiedades del subobjeto [PageProcessingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams) del objeto DocumentProcessingParams. El objeto PageProcessingParams es el objeto principal de un grupo de objetos que configuran los parámetros de procesamiento de páginas:

* [PagePreprocessingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pagepreprocessingparams)
* [ColorObjectsProhibitingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/colorobjectsprohibitingparams)
* [PageAnalysisParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageanalysisparams)
  * [TableAnalysisParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/tableanalysisparams)
  * [BarcodeParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/barcodeparams)
* [ObjectsExtractionParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/objectsextractionparams)
* [RecognizerParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/recognizerparams)
* [SynthesisParamsForPage](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/synthesisparamsforpage)
  * [FontFormattingDetectionParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/fontformattingdetectionparams)

El objeto PageProcessingParams también le permite activar o desactivar cualquiera de las etapas de procesamiento. Por ejemplo, puede establecer la propiedad [PerformAnalysis](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams#performanalysis) del objeto PageProcessingParams en FALSE si tiene previsto especificar los bloques manualmente y no necesita realizar el análisis de diseño.

<div id="document-processing">
  ## Procesamiento de documentos
</div>

Para configurar los parámetros del procesamiento de documentos, además de los parámetros de procesamiento de páginas, también debe configurar los parámetros de síntesis del documento mediante el objeto [SynthesisParamsForDocument](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/synthesisparamsfordocument). Durante la síntesis del documento se detectan los estilos y el formato de las fuentes. Las propiedades de los objetos de FineReader Engine relacionadas con las fuentes y los estilos del documento solo adquieren sentido después de la síntesis del documento.

Puede omitir la etapa de síntesis del documento en los siguientes casos:

* Si va a exportar el texto reconocido en formato TXT. Al exportarlo en este formato, no se utiliza la información de síntesis.
* Si va a exportar un documento en formato [PDF ImageOnly](/es/fine-reader/engine/api-reference/enumerations/pdfexportmodeenum). En este modo no se utilizan ni el texto reconocido ni la información de diseño.

En todos los demás casos, debe realizarse la síntesis del documento. Omitirla provocará errores durante la exportación.

<Note>
  Los métodos que incluyen la palabra "Process" en su nombre (por ejemplo, IFRDocument::Process ) incluyen la etapa de síntesis del documento. Los métodos de procesamiento del objeto FRPage no la incluyen, por lo que, después de usarlos y antes de exportar, debe llamar explícitamente a algún método que realice la síntesis del documento.
</Note>

Puede acelerar la etapa de síntesis del documento y reducir el uso de memoria. Si establece la propiedad DetectFontFormattingAtPageLevel del objeto SynthesisParamsForPage en TRUE durante la síntesis de la página, después puede desactivar la detección de los parámetros de fuente y de la estructura del documento durante la síntesis del documento (DetectFontFormatting y DetectDocumentStructure del objeto SynthesisParamsForDocument). No obstante, la calidad puede verse afectada.

Cada vez que se cambie el texto o el diseño del documento (por ejemplo, cuando se elimina o se agrega un bloque, o se edita el texto), le recomendamos volver a llamar a un método de síntesis del documento. Tenga en cuenta que el método SynthesizePages de FRDocument le permite especificar la colección de páginas del documento que se modificaron, por lo que solo se volverán a calcular los datos necesarios.

<div id="tuning-document-processing">
  ## Ajuste del procesamiento de documentos
</div>

Un procedimiento paso a paso que utiliza los objetos de parámetros mencionados anteriormente debería tener este aspecto:

1. Cree un objeto [DocumentProcessingParams](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams) con ayuda del método [CreateDocumentProcessingParams](/es/fine-reader/engine/api-reference/engine-object-iengine-interface/creation-methods/createlessobjectgreater-methods) del objeto [Engine](/es/fine-reader/engine/api-reference/engine-object-iengine-interface).

2. Configure las propiedades necesarias del subobjeto PageProcessingParams. No es necesario configurar todas las propiedades de todos los subobjetos, ya que, al crearse, se inicializan con valores predeterminados razonables. Solo tiene que ajustar aquellas propiedades para las que desee valores distintos de los predeterminados.

Cuando configure los parámetros que se usarán en las funciones de análisis de diseño, no olvide establecer los valores correctos de las propiedades de los subobjetos de PageProcessingParams que afectan al reconocimiento. Esto se recomienda porque todos estos parámetros se copian en los bloques que se crean durante el análisis de diseño y después se utilizan para el reconocimiento, y también porque el análisis de determinadas partes de la imagen puede implicar reconocimiento.

3. Si es necesario, configure las propiedades necesarias del subobjeto [SynthesisParamsForDocument](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/synthesisparamsfordocument). No es necesario configurar todas las propiedades de todos los objetos y subobjetos, ya que, al crearse, se inicializan con valores predeterminados razonables. Solo tiene que ajustar aquellas propiedades para las que desee valores distintos de los predeterminados. Compruebe que el valor de la propiedad [PerformSynthesis](/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams#performsynthesis) del objeto DocumentProcessingParams sea true.

4. Puede pasar el objeto DocumentProcessingParams o un conjunto de sus subobjetos a uno de los métodos de procesamiento de los objetos [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument), [FRPage](/es/fine-reader/engine/api-reference/document-related-objects/frpage) y [Engine](/es/fine-reader/engine/api-reference/engine-object-iengine-interface).

Para reconocer un documento, sugerimos usar los métodos de procesamiento del objeto FRDocument. Este objeto proporciona una amplia gama de métodos de procesamiento. El método más práctico, que permite realizar el preprocesamiento, el análisis, el reconocimiento y la síntesis con un solo método, es [Process](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/process-method). Además, utiliza del modo más eficiente las capacidades de procesamiento simultáneo de los sistemas multiprocesador y multinúcleo. No obstante, también puede realizar de forma consecutiva el preprocesamiento, el análisis, el reconocimiento y la síntesis mediante los métodos correspondientes.

<Accordion title="Código C#">
  ```csharp theme={null}
  FREngine.IEngine engine;
  FREngine.IFRDocument frdoc;
  // Suponemos que el documento ya se ha creado y que se han agregado imágenes al documento
  // Crear DocumentProcessingParams y establecer parámetros
  FREngine.IDocumentProcessingParams dpp = engine.CreateDocumentProcessingParams();
  FREngine.IPageProcessingParams ppp = dpp.PageProcessingParams;
  ppp.PagePreprocessingParams.CorrectOrientationMode = COM_Auto;
  // Usar los parámetros para el procesamiento
  frDoc.Process( dpp );
  ```
</Accordion>

Se utilizan procedimientos similares en los siguientes ejemplos de código:

* Linux: [CustomLanguage](/es/fine-reader/engine/guided-tour/samples#customlanguage)
* Windows: [CustomLanguage](/es/fine-reader/engine/guided-tour/samples#customlanguage), [VisualComponents](/es/fine-reader/engine/guided-tour/samples#visualcomponents); y herramientas de demostración: [MultiProcessingRecognition](/es/fine-reader/engine/guided-tour/samples#multiprocessingrecognition), [PDFExportProfiles](/es/fine-reader/engine/guided-tour/samples#pdfexportprofiles)

<div id="see-also">
  ## Consulte también
</div>

[Uso de perfiles](/es/fine-reader/engine/guided-tour/advanced-techniques/working-with-profiles)

[Reconocimiento de códigos de barras](/es/fine-reader/engine/guided-tour/advanced-techniques/recognizing-barcodes)

[Ajuste de los parámetros de exportación](/es/fine-reader/engine/guided-tour/advanced-techniques/tuning-export-parameters)
