File size: 3,257 Bytes
0800d35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
853d071
429de26
0800d35
 
22ed668
dcc2b56
0800d35
 
429de26
0320019
 
0800d35
 
 
 
 
0320019
0800d35
 
0320019
0800d35
 
0320019
0800d35
 
 
 
 
0320019
0800d35
 
 
 
 
 
 
 
 
 
0320019
0800d35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0320019
0800d35
 
 
 
 
 
 
 
0320019
0800d35
0320019
0800d35
 
 
0320019
0800d35
 
 
 
 
 
 
 
 
 
0320019
0800d35
0320019
 
0800d35
 
 
 
 
f2c0db7
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# import gradio as gr
# import tensorflow as tf
# import requests
# import os
# import numpy as np
# import pandas as pd
# import huggingface_hub
# from huggingface_hub import Repository
# from datetime import datetime
# import scipy.ndimage.interpolation as inter
# import datasets
# from datasets import load_dataset, Image
# from PIL import Image
# from paddleocr import PaddleOCR
# from doctr.io import DocumentFile


# os.environ["CUDA_VISIBLE_DEVICES"] = "0"  # Use GPU 0, adjust if needed
# os.environ["TF_FORCE_GPU_ALLOW_GROWTH"] = "true"


# from doctr.models import ocr_predictor
# model = ocr_predictor(det_arch='db_resnet50', reco_arch='crnn_vgg16_bn', pretrained=True)



# """
# Perform OCR with doctr
# """
# def ocr_with_doctr(file):
#     text_output = ''
    
#     # Load the document
#     doc = DocumentFile.from_pdf(file)
    
#     # Perform OCR
#     result = ocr_model(doc)
    
#     # Extract text from OCR result
#     for page in result.pages:
#         for block in page.blocks:
#             for line in block.lines:
#                 text_output += " ".join([word.value for word in line.words]) + "\n"
    
#     return text_output

# """
# Paddle OCR
# """
# def ocr_with_paddle(img):
#     finaltext = ''
#     ocr = PaddleOCR(lang='en', use_angle_cls=True, use_gpu=True)
#     # img_path = 'exp.jpeg'
#     result = ocr.ocr(img)
    
#     for i in range(len(result[0])):
#         text = result[0][i][1][0]
#         finaltext += ' '+ text
#     return finaltext

# def generate_ocr(Method, file):
#     text_output = ''
#     if isinstance(file, bytes):  # Handle file uploaded as bytes
#         file = io.BytesIO(file)

#     if file.name.endswith('.pdf'):
#         # Perform OCR on the PDF using doctr
#         text_output = ocr_with_doctr(file)

#     else:
#         # Handle image file
#         img_np = np.array(Image.open(file))
#         text_output = generate_text_from_image(Method, img_np)
    
#     return text_output

# def generate_text_from_image(Method, img):
#     text_output = ''
#     if Method == 'PaddleOCR':
#         text_output = ocr_with_paddle(img)
#     return text_output


# import gradio as gr

# image_or_pdf = gr.File(label="Upload an image or PDF")
# method = gr.Radio(["PaddleOCR"], value="PaddleOCR")
# output = gr.Textbox(label="Output")

# demo = gr.Interface(
#     generate_ocr,
#     [method, image_or_pdf],
#     output,
#     title="Optical Character Recognition",
#     css=".gradio-container {background-color: lightgray} #radio_div {background-color: #FFD8B4; font-size: 40px;}",
#     article="""<p style='text-align: center;'>Feel free to give us your thoughts on this demo and please contact us at 
#                 <a href="mailto:[email protected]" target="_blank">[email protected]</a> 
#                 <p style='text-align: center;'>Developed by: <a href="https://www.pragnakalp.com" target="_blank">Pragnakalp Techlabs</a></p>"""
# )

# demo.launch(share=True)


import paddle
print("PaddlePaddle Version:", paddle.__version__)
print("Is GPU available:", paddle.is_compiled_with_cuda())
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
import tensorflow as tf
print(tf.test.is_built_with_cuda())