You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/ur/4-manufacturing/lessons/2-check-fruit-from-device/virtual-device-camera.md

8.7 KiB

تصویر حاصل کریں - ورچوئل IoT ہارڈویئر

اس سبق کے اس حصے میں، آپ اپنے ورچوئل IoT ڈیوائس میں کیمرہ سینسر شامل کریں گے اور اس سے تصاویر پڑھیں گے۔

ہارڈویئر

ورچوئل IoT ڈیوائس ایک سیمولیٹڈ کیمرہ استعمال کرے گا جو یا تو فائلز سے تصاویر بھیجے گا یا آپ کے ویب کیم سے۔

CounterFit میں کیمرہ شامل کریں

ورچوئل کیمرہ استعمال کرنے کے لیے، آپ کو اسے CounterFit ایپ میں شامل کرنا ہوگا۔

کام - CounterFit میں کیمرہ شامل کریں

CounterFit ایپ میں کیمرہ شامل کریں۔

  1. اپنے کمپیوٹر پر fruit-quality-detector نامی فولڈر میں ایک نیا Python ایپ بنائیں، جس میں ایک فائل app.py ہو اور Python ورچوئل ماحول ہو، اور CounterFit pip پیکجز شامل کریں۔

    ⚠️ اگر ضرورت ہو تو سبق 1 میں CounterFit Python پروجیکٹ بنانے اور سیٹ اپ کرنے کے لیے ہدایات دیکھ سکتے ہیں۔

  2. ایک اضافی Pip پیکج انسٹال کریں تاکہ CounterFit shim انسٹال ہو سکے جو کیمرہ سینسرز سے بات کر سکے اور کچھ Picamera Pip پیکج کو سیمولیٹ کرے۔ یقینی بنائیں کہ آپ یہ انسٹالیشن ورچوئل ماحول کے ساتھ ایکٹیویٹڈ ٹرمینل سے کر رہے ہیں۔

    pip install counterfit-shims-picamera
    
  3. یقینی بنائیں کہ CounterFit ویب ایپ چل رہی ہے۔

  4. کیمرہ بنائیں:

    1. Sensors پین میں Create sensor باکس میں جائیں، Sensor type ڈراپ ڈاؤن کریں اور Camera منتخب کریں۔

    2. Name کو Picamera پر سیٹ کریں۔

    3. کیمرہ بنانے کے لیے Add بٹن منتخب کریں۔

    کیمرہ سیٹنگز

    کیمرہ بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔

    بنایا گیا کیمرہ

کیمرہ پروگرام کریں

ورچوئل IoT ڈیوائس کو اب ورچوئل کیمرہ استعمال کرنے کے لیے پروگرام کیا جا سکتا ہے۔

کام - کیمرہ پروگرام کریں

ڈیوائس کو پروگرام کریں۔

  1. یقینی بنائیں کہ fruit-quality-detector ایپ VS Code میں کھلی ہوئی ہے۔

  2. app.py فائل کھولیں۔

  3. CounterFit سے ایپ کو جوڑنے کے لیے app.py کے اوپر درج ذیل کوڈ شامل کریں:

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. اپنے app.py فائل میں درج ذیل کوڈ شامل کریں:

    import io
    from counterfit_shims_picamera import PiCamera
    

    یہ کوڈ کچھ ضروری لائبریریاں امپورٹ کرتا ہے، جن میں PiCamera کلاس شامل ہے جو counterfit_shims_picamera لائبریری سے آتی ہے۔

  5. کیمرہ کو انیشیئلائز کرنے کے لیے درج ذیل کوڈ شامل کریں:

    camera = PiCamera()
    camera.resolution = (640, 480)
    camera.rotation = 0
    

    یہ کوڈ ایک PiCamera آبجیکٹ بناتا ہے، ریزولوشن کو 640x480 پر سیٹ کرتا ہے۔ حالانکہ زیادہ ریزولوشنز سپورٹ کیے جاتے ہیں، لیکن امیج کلاسفائر چھوٹی تصاویر (227x227) پر کام کرتا ہے، اس لیے بڑی تصاویر حاصل کرنے کی ضرورت نہیں۔

    camera.rotation = 0 لائن تصویر کی ڈگری میں روٹیشن سیٹ کرتی ہے۔ اگر آپ کو ویب کیم یا فائل سے تصویر کو گھمانے کی ضرورت ہو، تو اسے مناسب طریقے سے سیٹ کریں۔ مثال کے طور پر، اگر آپ ویب کیم میں لینڈ اسکیپ موڈ میں کیلے کی تصویر کو پورٹریٹ میں تبدیل کرنا چاہتے ہیں، تو camera.rotation = 90 سیٹ کریں۔

  6. تصویر کو بائنری ڈیٹا کے طور پر حاصل کرنے کے لیے درج ذیل کوڈ شامل کریں:

    image = io.BytesIO()
    camera.capture(image, 'jpeg')
    image.seek(0)
    

    یہ کوڈ ایک BytesIO آبجیکٹ بناتا ہے تاکہ بائنری ڈیٹا اسٹور کیا جا سکے۔ تصویر کیمرہ سے JPEG فائل کے طور پر پڑھی جاتی ہے اور اس آبجیکٹ میں محفوظ کی جاتی ہے۔ اس آبجیکٹ میں ایک پوزیشن انڈیکیٹر ہوتا ہے تاکہ معلوم ہو سکے کہ ڈیٹا میں کہاں ہے، اس لیے image.seek(0) لائن اس پوزیشن کو شروع میں لے جاتی ہے تاکہ بعد میں تمام ڈیٹا پڑھا جا سکے۔

  7. اس کے نیچے درج ذیل کوڈ شامل کریں تاکہ تصویر کو فائل میں محفوظ کیا جا سکے:

    with open('image.jpg', 'wb') as image_file:
        image_file.write(image.read())
    

    یہ کوڈ image.jpg نامی فائل کو لکھنے کے لیے کھولتا ہے، پھر BytesIO آبجیکٹ سے تمام ڈیٹا پڑھتا ہے اور اسے فائل میں لکھتا ہے۔

    💁 آپ تصویر کو براہ راست فائل میں محفوظ کر سکتے ہیں بجائے BytesIO آبجیکٹ کے، فائل کا نام camera.capture کال میں پاس کر کے۔ BytesIO آبجیکٹ استعمال کرنے کی وجہ یہ ہے کہ بعد میں اس سبق میں آپ تصویر کو اپنے امیج کلاسفائر کو بھیج سکیں۔

  8. CounterFit میں کیمرہ کے لیے تصویر کو کنفیگر کریں۔ آپ Source کو File پر سیٹ کر سکتے ہیں، پھر ایک تصویر اپلوڈ کریں، یا Source کو WebCam پر سیٹ کریں، اور تصاویر آپ کے ویب کیم سے حاصل ہوں گی۔ یقینی بنائیں کہ تصویر منتخب کرنے یا ویب کیم منتخب کرنے کے بعد Set بٹن منتخب کریں۔

    CounterFit میں فائل کو امیج سورس کے طور پر سیٹ کیا گیا، اور ویب کیم میں ایک شخص کیلے کو پکڑے ہوئے دکھایا گیا

  9. ایک تصویر حاصل کی جائے گی اور image.jpg کے طور پر موجودہ فولڈر میں محفوظ کی جائے گی۔ آپ یہ فائل VS Code ایکسپلورر میں دیکھیں گے۔ فائل منتخب کریں تاکہ تصویر دیکھ سکیں۔ اگر اسے روٹیشن کی ضرورت ہو، تو camera.rotation = 0 لائن کو مناسب طریقے سے اپڈیٹ کریں اور دوبارہ تصویر لیں۔

💁 آپ یہ کوڈ code-camera/virtual-iot-device فولڈر میں دیکھ سکتے ہیں۔

😀 آپ کا کیمرہ پروگرام کامیاب رہا!


ڈسکلیمر:
یہ دستاویز AI ترجمہ سروس Co-op Translator کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔