?
import cv2
import matplotlib.pyplot as plt
import numpy as np# 讀取圖像
image = cv2.imread('./data/1.png')
if image is None:print("無法讀取圖像文件")
else:# 轉換為灰度圖像gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)# 使用Canny邊緣檢測edges = cv2.Canny(gray, 50, 150, apertureSize=3)# 使用概率霍夫變換檢測線段lines = cv2.HoughLinesP(edges, rho=1, theta=np.pi / 180, threshold=100, minLineLength=100, maxLineGap=10)# 繪制檢測到的線段if lines is not None:for line in lines:x1, y1, x2, y2 = line[0]cv2.line(image, (x1, y1), (x2, y2), (0, 255, 0), 2)# 顯示結果plt.imshow(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))plt.axis('off') # 不顯示坐標軸plt.show()