เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ไปป์ไลน์ประมวลผลภาพ

เพื่อนร่วมงานของคุณได้เขียนฟังก์ชันสำหรับเตรียมข้อมูลภาพภาษามือของอเมริกา เพื่อเพิ่มความแม่นยำให้กับโมเดล machine learning ฟังก์ชันนี้รับภาพ grayscale แล้วรัน Canny edge detection ซึ่งเป็นเทคนิคที่นิยมใช้ใน computer vision แบบดั้งเดิม และช่วยเน้นขอบของวัตถุในภาพ เป้าหมายคือนำฟังก์ชันนี้ไปใช้กับภาพทั้งหมดในชุดข้อมูล

ฟังก์ชันที่เพื่อนร่วมงานเขียนไว้คือ compute_edges() ซึ่งพร้อมใช้งานในเอนไวรอนเมนต์แล้ว โดยรับภาพที่มีมิติ (1, h, w) ซึ่ง h คือความสูง และ w คือความกว้าง สามารถเป็นจำนวนเต็มใดก็ได้

Dask array ของภาพทั้งหมดอยู่ในตัวแปร image_array ซึ่งมีรูปร่าง (N, h, w, 3) โดย N คือจำนวนภาพ และมี 3 ช่องสีสำหรับสีแดง น้ำเงิน และเขียว

ได้ import dask.array ให้คุณในชื่อ da แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Parallel Programming with Dask in Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • แปลงภาพจากสีเป็น grayscale โดยหาค่าเฉลี่ยตามมิติสุดท้าย
  • ใช้เมธอด .map_blocks() ของอาร์เรย์ภาพ grayscale เพื่อนำฟังก์ชัน compute_edges() ไปใช้กับแต่ละภาพ
  • เลือกเฉพาะภาพ edge ที่ index ที่ศูนย์ แล้วคำนวณผลลัพธ์
  • ใช้ plt.imshow() เพื่อแสดงภาพ edge

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Convert the color photos to grayscale
grayscale_images = ____

# Apply the edge detection function
edge_images = ____.____(____)

# Select the zeroth image and compute its values
sample_image = ____

# Show the result
____(____, cmap='gray')
plt.show()
แก้ไขและรันโค้ด