ฮิสเทรีซิสหมายถึงผลกระทบที่ล้าหลังของผลลัพธ์ ในแง่ของธรณีประตู ฮิสเทรีซิสหมายถึงพื้นที่ ที่สูงกว่าค่าเกณฑ์ต่ำสุดที่เจาะจงหรือสูงกว่าค่าเกณฑ์สูง หมายถึงพื้นที่ ที่มีความมั่นใจในธรรมชาติสูง
ด้วยความช่วยเหลือของฮิสเทรีซิส นอยส์ที่อยู่นอกขอบของวัตถุในภาพสามารถละเลยได้
ให้เราดูว่าสามารถบรรลุเกณฑ์ฮิสเทรีซิสได้อย่างไรโดยใช้ไลบรารี scikit-learn:
ตัวอย่าง
import matplotlib.pyplot as plt from skimage import data, filters fig, ax = plt.subplots(nrows=2, ncols=2) orig_img = data.coins() edges = filters.sobel(orig_img) low = 0.1 high = 0.4 lowt = (edges > low).astype(int) hight = (edges > high).astype(int) hyst = filters.apply_hysteresis_threshold(edges, low, high) ax[0, 0].imshow(orig_img, cmap='gray') ax[0, 0].set_title('Original image') ax[0, 1].imshow(edges, cmap='magma') ax[0, 1].set_title('Sobel edges') ax[1, 0].imshow(lowt, cmap='magma') ax[1, 0].set_title('Low threshold') ax[1, 1].imshow(hight + hyst, cmap='magma') ax[1, 1].set_title('Hysteresis threshold') for a in ax.ravel(): a.axis('off') plt.tight_layout() plt.show()
ผลลัพธ์
คำอธิบาย
-
นำเข้าไลบรารีที่จำเป็น
-
ฟังก์ชัน subplot ใช้เพื่อกำหนดพื้นที่การลงจุดก่อนที่จะลงจุดภาพบนคอนโซล
-
ข้อมูล 'coin' ที่มีอยู่แล้วในแพ็คเกจ scikit-learn ถูกใช้เป็นอินพุต
-
ตัวกรอง 'sobel' ใช้เพื่อให้ได้ภาพ 'sobel' ของอินพุต โดยเน้นที่ขอบในภาพผลลัพธ์
-
ฟังก์ชัน 'apply_hysteresis_threshold' ใช้เพื่อรับค่าที่สูงกว่าและต่ำกว่าเกณฑ์ที่กำหนด
-
ข้อมูลนี้จะแสดงบนคอนโซลโดยใช้ฟังก์ชัน 'imshow'