SaravananSuriya / BizCardX-Extracting-Business-Card-Data-with-OCR

In this project developing a Streamlit application that allows users to upload an image of a business card and extract relevant information from it using easyOCR.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BizCardX-Extracting-Business-Card-Data-with-OCR

Getting the text data from an image exatraction by using easyOCR and Create a user interface app using Streamlit.

Project Title : BizCardX: Extracting Business Card Data with OCR.

Technologies : OCR,streamlit GUI, SQL,Data Extraction.

Linkedin URL : https://www.linkedin.com/in/saravanan-b-241468269/details/projects/

Dataset Link: https://drive.google.com/drive/folders/1FhLOdeeQ4Bfz48JAfHrU_VXvNTRgajhp)https://drive.google.com/drive/folders/1FhLOdeeQ4Bfz48JAfHrU_VXvNTRgajhp

Approach :

1. Install the required packages: You will need to install Python, Streamlit,easyOCR, and a database management system like SQLite or MySQL.
2. Design the user interface: Create a simple and intuitive user interface using Streamlit that guides users through the process of uploading the business card image and extracting its information. You can use widgets like file uploader, buttons, and text boxes to make the interface more interactive.
3. Implement the image processing and OCR: Use easyOCR to extract the relevant information from the uploaded business card image. You can use image processing techniques like resizing, cropping, and thresholding to enhance the image quality before passing it to the OCR engine.
4. Display the extracted information: Once the information has been extracted, display it in a clean and organized manner in the Streamlit GUI. You can use widgets like tables, text boxes, and labels to present the information.
5. Implement database integration: Use a database management system like SQLite or MySQL to store the extracted information along with the uploaded business card image. You can use SQL queries to create tables, insert data, and retrieve data from the database, Update the data and Allow the user to delete the data through the streamlit UI.
6. Test the application: Test the application thoroughly to ensure that it works as expected. You can run the application on your local machine by running the command streamlit run app.py in the terminal, where app.py is the name of your Streamlit application file.
7. Improve the application: Continuously improve the application by adding new features, optimizing the code, and fixing bugs. You can also add user authentication and authorization to make the application more secure.

Problem Statement:

You have been tasked with developing a Streamlit application that allows users to upload an image of a business card and extract relevant information from it using easyOCR. The extracted information should include the company name, card holder name, designation, mobile number, email address, website URL, area, city, state, and pin code. The extracted information should then be displayed in the application's graphical user interface (GUI).

In addition, the application should allow users to save the extracted information into a database along with the uploaded business card image. The database should be able to store multiple entries, each with its own business card image and extracted information.

To achieve this, you will need to use Python, Streamlit, easyOCR, and a database management system like SQLite or MySQL. The application should have a simple and intuitive user interface that guides users through the process of uploading the business card image and extracting its information. The extracted information should be displayed in a clean and organized manner, and users should be able to easily add it to the database with the click of a button. And Allow the user to Read the data, Update the data and Allow the user to delete the data through the streamlit UI.

This project will require skills in image processing, OCR, GUI development, and database management. It will also require you to carefully design and plan the application architecture to ensure that it is scalable, maintainable, and extensible. Good documentation and code organization will also be important for this project.

Results:

The result of the project would be a Streamlit application that allows users to upload an image of a business card and extract relevant information from it using easyOCR. The extracted information would include the company name, card holder name, designation, mobile number, email address, website URL, area, city, state, and pin code. The extracted information would then be displayed in the application's graphical user interface (GUI).

The application would also allow users to save the extracted information into a database along with the uploaded business card image. The database would be able to store multiple entries, each with its own business card image and extracted information.

The final application would have a simple and intuitive user interface that guides users through the process of uploading the business card image and extracting its information. The extracted information would be displayed in a clean and organized manner, and users would be able to easily add it to the database with the click of a button.

The project would require skills in image processing, OCR, GUI development, and database management. It would also require careful design and planning of the application architecture to ensure that it is scalable, maintainable, and extensible. Good documentation and code organization would also be important for the project. Overall, the result of the project would be a useful tool for businesses and individuals who need to manage business card information efficiently.

About

In this project developing a Streamlit application that allows users to upload an image of a business card and extract relevant information from it using easyOCR.


Languages

Language:Jupyter Notebook 61.5%Language:Python 38.5%