การ ตรวจ จับ บริเวณ ตัว เลข บนหน้า ปัด มิเตอร์ Python Opencv
Python
วิธีการ ติดตั้งภาษา Python Opencv
1. import ต่อ library Python Opencv
import os from PIL import Image
import cv2
import imutils
import numpy as np
2. อ่านภาพ
img = cv2.imread(“1615817564151.jpg”)
3. ทำ ภาพ ให้ เบลอ
imgBlurred = cv2.GaussianBlur(img, (5,5), 0)
4. แปลง ภาพ เป็น gray scale
gray = cv2.cvtColor(imgBlurred, cv2.COLOR_BGR2GRAY)
5. หา เส้น แนวตั้ง ด้วย edge detection
sobelx = cv2.Sobel(gray,cv2.CV_8U,1,0,ksize=3)
6. ทำ threshold
ret2,threshold_img = cv2.threshold(sobelx,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)
7. ปรับปรุง ภาพ
element = cv2.getStructuringElement(shape=cv2.MORPH_RECT, ksize=(17, 3))
morph_img_threshold = threshold_img.copy()
cv2.morphologyEx(src=threshold_img, op=cv2.MORPH_CLOSE, kernel=element, dst=morph_img_threshold)
8. ทำการ ติด ฉลาก ให้ วัตถุ
contours, hierarchy= cv2.findContours(morph_img_threshold,mode=cv2.RETR_EXTERNAL,method=cv2.CHAIN_APPROX_NONE)
9. วนลูป ใน แต่ละ วัตถุ
for i,cnt in enumerate(contours):
min_rect = cv2.minAreaRect(cnt)
#print(min_rect)
if validateRotationAndRatio(min_rect):
10. ตัด ออก มา ทีละ วัตถุ
x,y,w,h = cv2.boundingRect(cnt)
p_img=img[y:y+h,x:x+w]
img = cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)
พอ ได้ บริเวณ เฉพาะ ตัวเลข มา แล้วนั้น
11. เอา บริเวณ เฉพาะ ตัวเลข มา ทำ ภาพ เป็น gray scale
gray = cv2.cvtColor(p_img, cv2.COLOR_BGR2GRAY) #convert to grey scale
12. ทำ threshold
ret,thresh2 = cv2.threshold(gray,127,255,cv2.THRESH_BINARY_INV)
13. ทำการ ติดฉลาก ให้ วัตถุ
# find contours, sort and draw the biggest one
contours, _ = cv2.findContours(thresh2, cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
ทำการเลือกแค่ 3 วัตถุ
contours = sorted(contours, key=cv2.contourArea, reverse=True)[:3]
14. ตัด ทีละ ตัวอักษร ออกมา
i = 0
while i < len(contours):
x, y, width, height = cv2.boundingRect(contours[i])
roi = thresh2[y:y+height, x:x+width]
cv2.imwrite(“piece”+str(i)+”.png”, roi)
i += 1
ดึง แต่ละ ส่วน แล้ว บันทึก ลง คอมพิวเตอร์
หมาย เหตุ ท้าย :
หาก คุณ ชอบ บทความ นี้ อย่าลืม คลิก❤ ด้านล่าง เพื่อ แนะนำ และ ถ้า คุณ มี คำถามใด ๆ แสดง ความคิด เห็น และ
ฉัน จะ พยายาม อย่าง ดี ที่ สุด ที่ จะ ตอบ คุณ สามารถ ติดตาม ฉัน บน Facebook Page (https://www.facebook.com/nextsoftwarehousethailand/) และ สามารถ ส่ง อีเมล ถึง ฉัน
ตะแกรงเหล็ก ไวร์เมช ราคาพถูก คุณภาพมาตรฐานอันดับ1 แข็งแรงทนทานเป็นิย่างมากอีกทั้งยัง สามารถถูกขนส่งเคลื่อนย้ายไปที่ต่างๆได้สะดวกรวดเร็วทำให้ไม่เสียเวลาเพิ่มอัดตราการเสร็จงานที่เร็วขึ้น สามารถนำไปใช้ได้ทันที ไม่ต้องเสียเวลาผูกเหล็ก ไวร์เมช จากการประเมิณผลการก่อสร้างโครงการต่างๆ พบว่าการใช้เหล็กตะแกรงสำเร็จรูป สามารถลดเวลาในการตัดวางและผูกเหล็กลงได้เป็นอย่างมาก