शुरू करेंमुफ़्त में शुरू करें

कुत्ते के पिक्सेल का प्रतिशत

कुत्ते के annotation डेटा को पार्स करने का अंतिम काम यह तय करना है कि हर इमेज में कुल कितने प्रतिशत पिक्सेल कुत्ते (या कुत्तों) का प्रतिनिधित्व करते हैं। आपको इस जानकारी की गणना करने और बाद के विश्लेषण के लिए इसे कॉलम के रूप में जोड़ने में, इस कोर्स में सीखी गई विभिन्न तकनीकों का उपयोग करना होगा.

पिक्सेल प्रतिशत निकालने के लिए, पहले हर कुत्ते का प्रतिनिधित्व करने वाले कुल पिक्सेल गिनें, फिर उन्हें इमेज-स्तर पर जोड़ें। आप bounding box को इस सूत्र से निकाल सकते हैं:

(Xend - Xstart) * (Yend - Ystart)

नोट: इस स्थिति में overlapping bounding boxes की संभावना को आप नज़रअंदाज़ कर सकते हैं.

प्रतिशत के लिए, कुल "dog" पिक्सेल को इमेज के कुल आकार से विभाजित करें, फिर 100 से गुणा करें.
joined_df DataFrame वैसा ही है जैसा आपने पिछली बार उपयोग किया था। pyspark.sql.functions को F के रूप में alias किया गया है.

यह अभ्यास पाठ्यक्रम का हिस्सा है

PySpark के साथ डेटा क्लीनिंग

पाठ्यक्रम देखें

अभ्यास निर्देश

  • एक Python फ़ंक्शन परिभाषित करें जो tuples की सूची (dog objects) ले और प्रति इमेज कुल "dog" पिक्सेल की गणना करे.
  • फ़ंक्शन का एक UDF बनाएँ और उसका उपयोग करते हुए DataFrame पर 'dog_pixels' नाम का नया कॉलम बनाएँ.
  • एक और कॉलम 'dog_percent' बनाएँ, जो इमेज में 'dog_pixels' के प्रतिशत को दर्शाए। ध्यान रखें कि यह 0-100% के बीच हो। केवल कॉलम के string नाम का ही उपयोग करें (जैसे "columnname", न कि df.columnname).
  • इमेज में 60% से अधिक 'dog_pixels' वाली पहली 10 पंक्तियाँ दिखाएँ। इसके लिए SQL शैली की string का उपयोग करें (जैसे, 'columnname > ____').

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Calculate total pixels occupied by dogs in the image
def dogPixelCount(doglist):
  totalpixels = ____
  for dog in doglist:
    totalpixels += (dog[____] - ____[1]) * (____[____] - ____)
  return totalpixels

# Define a UDF for the pixel count
udfDogPixelCount = ____

# Add a new column 'dog_pixels' containing the pixel count for dogs in each image
joined_df = ____

# Add a column 'dog_percent' representing the percentage of the image occupied by dogs
joined_df = joined_df.____('dog_percent', (____ / (____)) * ____)

# Show the first 10 annotations with more than 60% dog
____
कोड संपादित करें और चलाएँ