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/id/4-manufacturing/lessons/2-check-fruit-from-device/README.md

12 KiB

Periksa Kualitas Buah dari Perangkat IoT

Gambaran sketchnote dari pelajaran ini

Sketchnote oleh Nitya Narasimhan. Klik gambar untuk versi yang lebih besar.

Kuis Pra-Pelajaran

Kuis Pra-Pelajaran

Pendahuluan

Pada pelajaran sebelumnya, Anda telah mempelajari tentang pengklasifikasi gambar dan cara melatihnya untuk mendeteksi buah yang baik dan buruk. Untuk menggunakan pengklasifikasi gambar ini dalam aplikasi IoT, Anda perlu dapat menangkap gambar menggunakan kamera tertentu, lalu mengirimkan gambar tersebut ke cloud untuk diklasifikasikan.

Dalam pelajaran ini, Anda akan mempelajari tentang sensor kamera dan cara menggunakannya dengan perangkat IoT untuk menangkap gambar. Anda juga akan mempelajari cara memanggil pengklasifikasi gambar dari perangkat IoT Anda.

Dalam pelajaran ini, kita akan membahas:

Sensor Kamera

Sensor kamera, seperti namanya, adalah kamera yang dapat Anda hubungkan ke perangkat IoT Anda. Kamera ini dapat mengambil gambar diam atau merekam video streaming. Beberapa kamera akan mengembalikan data gambar mentah, sementara yang lain akan mengompresi data gambar menjadi file gambar seperti JPEG atau PNG. Biasanya, kamera yang digunakan dengan perangkat IoT jauh lebih kecil dan memiliki resolusi lebih rendah dibandingkan yang biasa Anda gunakan, tetapi Anda juga dapat menemukan kamera beresolusi tinggi yang sebanding dengan ponsel kelas atas. Anda juga dapat menemukan berbagai lensa yang dapat diganti, pengaturan kamera ganda, kamera termal infra-merah, atau kamera UV.

Cahaya dari sebuah adegan melewati lensa dan difokuskan pada sensor CMOS

Sebagian besar sensor kamera menggunakan sensor gambar di mana setiap piksel adalah fotodioda. Sebuah lensa memfokuskan gambar ke sensor gambar, dan ribuan atau jutaan fotodioda mendeteksi cahaya yang jatuh pada masing-masing, lalu merekamnya sebagai data piksel.

💁 Lensa membalikkan gambar, dan sensor kamera kemudian membalik gambar kembali ke posisi yang benar. Hal yang sama terjadi pada mata Anda - apa yang Anda lihat terdeteksi terbalik di bagian belakang mata Anda, dan otak Anda memperbaikinya.

🎓 Sensor gambar dikenal sebagai Active-Pixel Sensor (APS), dan jenis APS yang paling populer adalah sensor complementary metal-oxide semiconductor, atau CMOS. Anda mungkin pernah mendengar istilah sensor CMOS digunakan untuk sensor kamera.

Sensor kamera adalah sensor digital, yang mengirimkan data gambar sebagai data digital, biasanya dengan bantuan pustaka yang menyediakan komunikasi. Kamera terhubung menggunakan protokol seperti SPI untuk memungkinkan mereka mengirimkan data dalam jumlah besar - gambar jauh lebih besar dibandingkan angka tunggal dari sensor seperti sensor suhu.

Apa saja keterbatasan ukuran gambar pada perangkat IoT? Pikirkan tentang kendala terutama pada perangkat keras mikrokontroler.

Menangkap Gambar Menggunakan Perangkat IoT

Anda dapat menggunakan perangkat IoT Anda untuk menangkap gambar yang akan diklasifikasikan.

Tugas - menangkap gambar menggunakan perangkat IoT

Ikuti panduan yang relevan untuk menangkap gambar menggunakan perangkat IoT Anda:

Menerbitkan Pengklasifikasi Gambar Anda

Anda telah melatih pengklasifikasi gambar Anda pada pelajaran sebelumnya. Sebelum Anda dapat menggunakannya dari perangkat IoT Anda, Anda perlu menerbitkan model tersebut.

Iterasi Model

Saat model Anda dilatih pada pelajaran sebelumnya, Anda mungkin memperhatikan bahwa tab Performance menunjukkan iterasi di sisi layar. Ketika Anda pertama kali melatih model, Anda akan melihat Iteration 1 dalam pelatihan. Ketika Anda meningkatkan model menggunakan gambar prediksi, Anda akan melihat Iteration 2 dalam pelatihan.

Setiap kali Anda melatih model, Anda mendapatkan iterasi baru. Ini adalah cara untuk melacak berbagai versi model Anda yang dilatih pada kumpulan data yang berbeda. Ketika Anda melakukan Quick Test, ada menu drop-down yang dapat Anda gunakan untuk memilih iterasi, sehingga Anda dapat membandingkan hasil di berbagai iterasi.

Ketika Anda puas dengan sebuah iterasi, Anda dapat menerbitkannya agar dapat digunakan oleh aplikasi eksternal. Dengan cara ini, Anda dapat memiliki versi yang diterbitkan yang digunakan oleh perangkat Anda, lalu bekerja pada versi baru melalui beberapa iterasi, kemudian menerbitkannya setelah Anda puas dengan hasilnya.

Tugas - menerbitkan sebuah iterasi

Iterasi diterbitkan dari portal Custom Vision.

  1. Buka portal Custom Vision di CustomVision.ai dan masuk jika Anda belum membukanya. Kemudian buka proyek fruit-quality-detector Anda.

  2. Pilih tab Performance dari opsi di bagian atas.

  3. Pilih iterasi terbaru dari daftar Iterations di sisi layar.

  4. Pilih tombol Publish untuk iterasi tersebut.

    Tombol publish

  5. Dalam dialog Publish Model, atur Prediction resource ke sumber daya fruit-quality-detector-prediction yang Anda buat pada pelajaran sebelumnya. Biarkan nama sebagai Iteration2, lalu pilih tombol Publish.

  6. Setelah diterbitkan, pilih tombol Prediction URL. Ini akan menampilkan detail API prediksi, dan Anda akan memerlukan ini untuk memanggil model dari perangkat IoT Anda. Bagian bawah diberi label If you have an image file, dan ini adalah detail yang Anda butuhkan. Salin URL yang ditampilkan, yang akan terlihat seperti:

    https://<location>.api.cognitive.microsoft.com/customvision/v3.0/Prediction/<id>/classify/iterations/Iteration2/image
    

    Di mana <location> adalah lokasi yang Anda gunakan saat membuat sumber daya custom vision Anda, dan <id> adalah ID panjang yang terdiri dari huruf dan angka.

    Juga salin nilai Prediction-Key. Ini adalah kunci aman yang harus Anda sertakan saat memanggil model. Hanya aplikasi yang menyertakan kunci ini yang diizinkan menggunakan model, aplikasi lain akan ditolak.

    Dialog API prediksi yang menunjukkan URL dan kunci

Ketika iterasi baru diterbitkan, iterasi tersebut akan memiliki nama yang berbeda. Bagaimana menurut Anda cara mengubah iterasi yang digunakan oleh perangkat IoT?

Mengklasifikasikan Gambar dari Perangkat IoT Anda

Sekarang Anda dapat menggunakan detail koneksi ini untuk memanggil pengklasifikasi gambar dari perangkat IoT Anda.

Tugas - mengklasifikasikan gambar dari perangkat IoT Anda

Ikuti panduan yang relevan untuk mengklasifikasikan gambar menggunakan perangkat IoT Anda:

Meningkatkan Model

Anda mungkin menemukan bahwa hasil yang Anda dapatkan saat menggunakan kamera yang terhubung ke perangkat IoT Anda tidak sesuai dengan yang Anda harapkan. Prediksi tidak selalu seakurat saat menggunakan gambar yang diunggah dari komputer Anda. Hal ini terjadi karena model dilatih dengan data yang berbeda dari yang digunakan untuk prediksi.

Untuk mendapatkan hasil terbaik dari pengklasifikasi gambar, Anda ingin melatih model dengan gambar yang semirip mungkin dengan gambar yang digunakan untuk prediksi. Jika Anda menggunakan kamera ponsel untuk menangkap gambar untuk pelatihan, misalnya, kualitas gambar, ketajaman, dan warnanya akan berbeda dengan kamera yang terhubung ke perangkat IoT.

2 gambar pisang, satu dengan resolusi rendah dan pencahayaan buruk dari perangkat IoT, dan satu dengan resolusi tinggi dan pencahayaan baik dari ponsel

Pada gambar di atas, gambar pisang di sebelah kiri diambil menggunakan Kamera Raspberry Pi, sedangkan gambar di sebelah kanan diambil dari pisang yang sama di lokasi yang sama menggunakan iPhone. Ada perbedaan kualitas yang mencolok - gambar iPhone lebih tajam, dengan warna yang lebih cerah dan kontras yang lebih baik.

Apa lagi yang mungkin menyebabkan gambar yang ditangkap oleh perangkat IoT Anda menghasilkan prediksi yang salah? Pikirkan tentang lingkungan tempat perangkat IoT mungkin digunakan, faktor apa saja yang dapat memengaruhi gambar yang ditangkap?

Untuk meningkatkan model, Anda dapat melatih ulang menggunakan gambar yang ditangkap dari perangkat IoT.

Tugas - meningkatkan model

  1. Klasifikasikan beberapa gambar buah matang dan tidak matang menggunakan perangkat IoT Anda.

  2. Di portal Custom Vision, latih ulang model menggunakan gambar di tab Predictions.

    ⚠️ Anda dapat merujuk ke instruksi untuk melatih ulang pengklasifikasi Anda di pelajaran 1 jika diperlukan.

  3. Jika gambar Anda terlihat sangat berbeda dari gambar asli yang digunakan untuk pelatihan, Anda dapat menghapus semua gambar asli dengan memilihnya di tab Training Images dan memilih tombol Delete. Untuk memilih gambar, arahkan kursor Anda ke atasnya dan tanda centang akan muncul, pilih tanda centang tersebut untuk memilih atau membatalkan pilihan gambar.

  4. Latih iterasi baru dari model dan terbitkan menggunakan langkah-langkah di atas.

  5. Perbarui URL endpoint di kode Anda, lalu jalankan ulang aplikasi.

  6. Ulangi langkah-langkah ini hingga Anda puas dengan hasil prediksi.


🚀 Tantangan

Seberapa besar resolusi gambar atau pencahayaan memengaruhi prediksi?

Cobalah mengubah resolusi gambar dalam kode perangkat Anda dan lihat apakah itu memengaruhi kualitas gambar. Juga coba ubah pencahayaan.

Jika Anda ingin membuat perangkat produksi untuk dijual ke peternakan atau pabrik, bagaimana Anda memastikan perangkat tersebut memberikan hasil yang konsisten setiap saat?

Kuis Pasca-Pelajaran

Kuis Pasca-Pelajaran

Tinjauan & Studi Mandiri

Anda melatih model custom vision Anda menggunakan portal. Ini bergantung pada ketersediaan gambar - dan di dunia nyata, Anda mungkin tidak dapat memperoleh data pelatihan yang sesuai dengan apa yang ditangkap oleh kamera pada perangkat Anda. Anda dapat mengatasi ini dengan melatih langsung dari perangkat Anda menggunakan API pelatihan, untuk melatih model menggunakan gambar yang ditangkap dari perangkat IoT Anda.

Tugas

Tanggapi hasil klasifikasi


Penafian:
Dokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI Co-op Translator. Meskipun kami berusaha untuk memberikan hasil yang akurat, harap diingat bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang otoritatif. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.