# Text Recognition

## Introduction

Text Recognition can help you to automate tedious data entry and speed up the onboarding process.

## Ability

* Recognize text in all orientations
* Detect identity card in the image

## Limitations

The following is a list of conditions that can reduce performance of the model to recognize text.

* Blurry Image
* Glare Image
* Lightning
* Perspective

## Under the Hood

Kredibel is using **deep learning** to perform text recognition task. Below is an explanation of how a Kredibel Text Recognition system works.

### 1. Upload Image

Users can upload a **handheld** or **non-handheld** identity card image. Our system can handle both.&#x20;

### 2. Identity Card Detection

Our system will **detect** whether there is an identity card in the image or not.

### 3. Cropping

Our system will automatically **crop** the image region of interest (identity card) to prevent unwanted characters from being detected.

### 4. Orientation estimation

Our system will **estimate** text orientation and **normalize** it. Thats why our system can recognize text in all orientations.

### 5. Text Detection

Our system **detects** text on the image. Create a bounding box for each detected word.

### 6. Text Recognition

Our system **recognizes** each text detected by the text detection model.

### 7. POST-OCR Parsing

Our system will **parse** the unstructured data generated by the OCR system into structured data.

## Endpoints

| Method | URL                          | Description  |
| ------ | ---------------------------- | ------------ |
| POST   | `$vision/v1/ocr/id/ktp`      | KTP OCR      |
| POST   | `$vision/v1/ocr/id/sim`      | SIM OCR      |
| POST   | `$vision/v1/ocr/id/passport` | Passport OCR |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kredibel.io/api-references/text-recognition.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
