एक इमेज प्रोसेसिंग पाइपलाइन
आपके सहयोगी ने American Sign Language की इमेज पर चलाने के लिए एक प्रीप्रोसेसिंग फंक्शन लिखा है, जिससे आपके मशीन लर्निंग मॉडल की accuracy बेहतर हो सके. यह फंक्शन एक grayscale इमेज लेता है और उस पर Canny edge detection चलाता है. Canny edge detection क्लासिकल कंप्यूटर विज़न में आम है और इमेज में मौजूद ऑब्जेक्ट्स के किनारों को हाईलाइट करता है. आप इसे अपने डेटासेट की सभी इमेज पर लागू करना चाहते हैं.
आपके सहयोगी द्वारा लिखा गया फंक्शन आपके environment में compute_edges() के रूप में उपलब्ध है, और यह ऐसी इमेज लेता है जिसकी dimensions (1, h, w) हों, जहाँ ऊँचाई h और चौड़ाई w कोई भी integer हो सकते हैं.
आपकी इमेज का Dask array environment में image_array नाम से उपलब्ध है. इस array का shape (N, h, w, 3) है जहाँ N इमेज की संख्या है, और 3 चैनल red, blue, और green के लिए हैं.
dask.array आपके लिए da के रूप में इम्पोर्ट किया गया है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Dask के साथ Parallel Programming
अभ्यास निर्देश
- रंगीन इमेज को grayscale में बदलने के लिए अंतिम dimension के साथ mean लें.
- grayscale इमेज arrays के
.map_blocks()मेथड का उपयोग करकेcompute_edges()फंक्शन को हर इमेज पर लागू करें. - केवल शून्यवाँ (zeroth) edge इमेज चुनें और उसे compute करें.
- किनारों (edges) को plot करने के लिए
plt.imshow()का उपयोग करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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()