ฮิสโตแกรม
ในแบบฝึกหัดนี้ จะวิเคราะห์ปริมาณสีแดงในภาพ โดยคำนวณฮิสโตแกรมของช่องสีแดง (red channel) จากภาพด้านล่าง:
ภาพที่โหลดเป็นตัวแปร
image
การดึงข้อมูลจากภาพเป็นส่วนสำคัญของการปรับปรุงคุณภาพภาพ วิธีนี้ช่วยให้ปรับสมดุลระหว่างสีแดงและสีน้ำเงินเพื่อให้ภาพดูเย็นหรืออุ่นขึ้นได้
จะใช้ hist() เพื่อแสดงค่าความเข้มของสีแดงทั้ง 256 ระดับ และ ravel() เพื่อแปลงค่าสีเหล่านั้นให้เป็นอาร์เรย์แบบหนึ่งมิติ
Matplotlib ถูกโหลดไว้แล้วในชื่อ plt และ NumPy ในชื่อ np
หากต้องการดึงช่องสีเขียวของภาพ สามารถทำได้ดังนี้:
green = image[:, :, 1]
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การประมวลผลภาพด้วย Python
คำแนะนำการฝึกหัด
- ดึงช่องสีแดงโดยใช้การ slicing
- พล็อตฮิสโตแกรมและกำหนด bins ในช่วง 256 อย่าลืมใช้
.ravel()กับช่องสีด้วย
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Obtain the red channel
red_channel = image[____, ____, ____]
# Plot the red histogram with bins in a range of 256
plt.____(____.____, bins=____)
# Set title and show
plt.title('Red Histogram')
plt.show()