General Card Recognition: Easier Card Binding, and More
Tags: news, hmscore, machinelearning
Published: 2022-07-15 10:11:17

Cards come in all shapes and sizes, which apps don't like. The different layout of details and varying number lengths make it difficult for an app to automatically recognize key details, meaning the user has to manually enter membership card details or driving license details to verify themselves before using an app or for other purposes.

Fortunately, the [General Card Recognition](https://developer.huawei.com/consumer/en/doc/development/hiai-Guides/general-card-recognition-0000001050040073?ha_source=hms3) service from HMS Core ML Kit can universally recognize any card. By customizing the post-processing logic of the service (such as determining the length of a card number, or whether the number follows some specific letters), you can enable your app to recognize and obtain details from any scanned card.

## Service Introduction

The general card recognition service is built upon text recognition technology, providing a universal development framework. It supports cards with a fixed format — such as the Exit-Entry Permit for Traveling to and from Hong Kong and Macao, Hong Kong identity card, Mainland Travel Permit for Hong Kong and Macao Residents, driver's licenses of many countries/regions, and more. For such documents, you can customize the post-processing logic so that the service extracts only the desired information.

The service now offers three types of APIs, meaning it can recognize scanned cards from the camera stream, photos taken with the device camera, and those stored in local images. It also supports customization of the recognition UI, for easy usability and flexibility.

The GIF below illustrates how the service works in an app.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k1a7rugnqojmyyqzalyb.gif)

## Use Cases

The general card recognition service allows card information to be quickly collected, enabling a card to be smoothly bound to an app.

This is ideal when a user tries to book a hotel or air tickets for their journey, as they can quickly input their card details and complete their booking without the risk of losing out.

## Service Features
**Multi-card support**: General card recognition covers a wider range of card types than those covered by the text recognition, ID card recognition, and bank card recognition services.

This service can recognize any card with a fixed format, including the membership card, employee card, pass, and more.

**Multi-angle support**: The service can recognize information from a card with a tilt angle of up to 30 degrees, and is able to recognize scanned cards that have a curved text with a bending angle of up to 45 degrees. Under ideal conditions, the service can deliver a recognition accuracy of as high as 90%.

I got to know how to integrate this service [here](https://developer.huawei.com/consumer/en/doc/development/hiai-Guides/general-card-recognition-0000001050040073#section527710194118?ha_source=hms3). FYI, I also find [other services of ML Kit](https://developer.huawei.com/consumer/en/doc/development/hiai-Guides/service-introduction-0000001050040017#section119422313385?ha_source=hms3) intriguing and useful.

Look forward to seeing you in the comments section to know what ideas you've got for using the general card recognition service.