First commit

This commit is contained in:
2025-09-23 20:59:17 +09:00
commit 37267985b4
14 changed files with 2308 additions and 0 deletions

46
MgrUtilityPoleOCR.py Normal file
View File

@@ -0,0 +1,46 @@
import cv2
import pytesseract
from pytesseract import Output
img_path = '/Volumes/ExSSD/Working/용공추 사진/2,3월 데이터/Pole/20250307_153821.jpg'
# 이미지 경로
img = cv2.imread(img_path)
# 전처리
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(gray, (3, 3), 0)
thresh = cv2.adaptiveThreshold(
blur, 255,
cv2.ADAPTIVE_THRESH_MEAN_C,
cv2.THRESH_BINARY_INV,
11, 2
)
# OCR
custom_config = r'--oem 3 --psm 6'
data = pytesseract.image_to_data(
thresh, lang='kor+eng',
config=custom_config,
output_type=Output.DICT
)
# 보안등 아래 숫자 찾기
target_text = '보안등'
number_below = None
for i, word in enumerate(data['text']):
if word.strip() == target_text:
for j in range(i + 1, len(data['text'])):
if data['text'][j].strip().isdigit() and data['top'][j] > data['top'][i]:
number_below = data['text'][j].strip()
break
break
print(f"보안등 아래 숫자: {number_below}")
# 디버깅용: 전체 텍스트 출력
print("\n전체 인식 텍스트:")
for word in data['text']:
if word.strip():
print(word.strip())