Scikit-learn หรือที่เรียกกันทั่วไปว่า sklearn เป็นไลบรารี่ใน Python ที่ใช้สำหรับวัตถุประสงค์ในการใช้อัลกอริธึมการเรียนรู้ของเครื่อง เป็นห้องสมุดโอเพ่นซอร์สจึงสามารถใช้งานได้ฟรี ไลบรารีนี้สร้างขึ้นบนไลบรารี Numpy, SciPy และ Matplotlib
วิธีการ 'กำลังสองเดินขบวน' ใช้เพื่อค้นหารูปทรงในภาพ ใช้ฟังก์ชัน 'find_contours' ในคลาส 'measure' ของไลบรารี 'skimage' ในการนี้ ค่าที่มีอยู่ในอาร์เรย์จะถูกสอดแทรกในลักษณะเชิงเส้น
ด้วยวิธีนี้ ความแม่นยำของเส้นขอบในภาพส่งออกจะดีกว่ามาก หากเส้นขอบในภาพตัดกัน แสดงว่าเส้นขอบนั้นเปิด มิฉะนั้นจะปิด
ให้เราเข้าใจวิธีค้นหาเส้นขอบในภาพโดยใช้ไลบรารี scikit-learn -
ตัวอย่าง
import numpy as np import matplotlib.pyplot as plt from skimage import measure x, y = np.ogrid[-6.7:np.pi:215j, -1.2:np.pi:215j] r = np.sin(np.exp((np.sin(x)**3 + np.cos(y)**2))) contours = measure.find_contours(r, 0.8) fig, ax = plt.subplots() ax.imshow(r, cmap=plt.cm.gray) for contour in contours: ax.plot(contour[:, 1], contour[:, 0], linewidth=2) ax.axis('Image') ax.set_xticks([]) ax.set_yticks([]) plt.show()
ผลลัพธ์
คำอธิบาย
-
แพ็คเกจที่จำเป็นจะถูกนำเข้าสู่สภาพแวดล้อม
-
ข้อมูลถูกสร้างขึ้นด้วยความช่วยเหลือของแพ็คเกจ NumPy
-
ฟังก์ชัน 'find_contours' ใช้เพื่อกำหนดเส้นขอบของภาพ
-
ฟังก์ชัน 'แผนย่อย' ใช้เพื่อแสดงรูปภาพต้นฉบับและรูปภาพที่มีเส้นขอบบนคอนโซล