Sanjayraju30 commited on
Commit
42b463a
·
verified ·
1 Parent(s): d856f9f

Update ocr_engine.py

Browse files
Files changed (1) hide show
  1. ocr_engine.py +15 -6
ocr_engine.py CHANGED
@@ -3,14 +3,23 @@ import pytesseract
3
  import numpy as np
4
  from PIL import Image
5
 
6
- def extract_weight_from_image(image):
7
  try:
8
- image = np.array(image.convert("RGB")) # Ensure RGB format
9
- gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
10
- blur = cv2.GaussianBlur(gray, (3, 3), 0) # Optional: denoise
 
 
 
 
 
 
 
11
  text = pytesseract.image_to_string(blur, config='--psm 7 digits')
12
- weight = ''.join(filter(lambda x: x in '0123456789.', text))
13
- confidence = 95 # Placeholder
 
14
  return weight.strip(), confidence
15
  except Exception as e:
 
16
  return "", 0
 
3
  import numpy as np
4
  from PIL import Image
5
 
6
+ def extract_weight_from_image(pil_img):
7
  try:
8
+ # Convert PIL image to OpenCV
9
+ img = pil_img.convert("RGB")
10
+ img = np.array(img)
11
+ img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)
12
+
13
+ # Preprocess
14
+ gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
15
+ blur = cv2.GaussianBlur(gray, (3, 3), 0)
16
+
17
+ # OCR
18
  text = pytesseract.image_to_string(blur, config='--psm 7 digits')
19
+ weight = ''.join(filter(lambda c: c in '0123456789.', text))
20
+
21
+ confidence = 95 # Replace with real confidence logic if needed
22
  return weight.strip(), confidence
23
  except Exception as e:
24
+ print(f"OCR error: {e}")
25
  return "", 0