Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Teknologi Internet of Things

Bagaimana Pustaka Open-Source Mempercepat Pengembangan Visi Robot

Bagaimana Pustaka Open-Source Mempercepat Pengembangan Visi Robot
Artikel ini adalah bagian dari Proyek Khusus AspenCore tentang robot dengan bimbingan visi.

Sistem visi robot memerlukan berbagai macam kemampuan, namun ekosistem open-source menawarkan solusi untuk hampir setiap kebutuhan. Dari pengolahan citra dasar dan pengenalan objek hingga perencanaan gerakan canggih dan hindaran tabrakan, pengembang dapat memanfaatkan koleksi kaya pustaka. Di bawah ini kami menyoroti pustaka pengolahan citra open-source kunci yang memungkinkan aplikasi robotik canggih. (Catatan: laporan ini fokus pada algoritma citra dasar dan sengaja mengecualikan kerangka kerja visi yang didorong AI.)

Setiap diskusi tentang perangkat lunak visi robot harus mengakui pustaka OpenCV. OpenCV yang banyak digunakan dan kaya fitur menyediakan lebih dari 2.500 algoritma di seluruh modul seperti:

Ditulis dalam C++, OpenCV menawarkan binding bahasa untuk C++, Python, Java, dan MATLAB, dan berjalan di Windows, Linux, Android, dan macOS. Ia juga mendukung himpunan instruksi SIMD dan menyediakan akselerasi GPU melalui CUDA (modul gpu) dan OpenCL (modul ocl). Rilis OpenCV 4.0 terbaru memperkenalkan peningkatan kinerja dan mengintegrasikan algoritma Kinect Fusion yang populer.

Sementara kedalaman OpenCV adalah kekuatan, ini juga dapat menimbulkan kurva pembelajaran yang curam bagi pengembang yang ingin prototipe cepat. Pustaka SimpleCV berbasis Python mengatasi kesenjangan ini. Dibangun di atas OpenCV, SimpleCV menawarkan API tingkat tinggi yang intuitif yang memungkinkan pengembang kurang berpengalaman untuk mengimplementasikan tugas machine vision umum dengan panggilan Python yang ringkas. Misalnya, pengambilan ambang citra dapat dilakukan dengan satu baris:

from SimpleCV import Image, Color, Display # Buat citra separuh-def separuh def halfsies(left, right): result = left crop = right.crop(right.width/2.0, 0, right.width/2.0, right.height) result = result.blit(crop, (left.width/2, 0)) return result # Muat citra img = Image('https://i.imgur.com/lfAeZ4n.png') # Binaris dengan ambang 90 dan balik hasil output = img.binarize(90).invert() # Buat citra samping-samping result = halfsies(img, output) # Tampilkan dan simpan result.show() result.save('juniperbinary.png') 

Bagaimana Pustaka Open-Source Mempercepat Pengembangan Visi Robot
Gambar 1. Hasil dari kode Python di atas (Sumber: SimpleCV)

Di luar manipulasi citra dasar, baik OpenCV maupun SimpleCV menyediakan algoritma canggih yang esensial untuk persepsi robotika, seperti pengenalan objek, penyelarasan, dan navigasi aman. Struktur data sentral dalam tugas ini adalah point cloud—representasi multidimensi dari objek yang ditangkap oleh kamera kedalaman. Point cloud memungkinkan operasi inti robotika seperti identifikasi, penyelarasan, dan pemasangan. Point Cloud Library (PCL) menyediakan algoritma untuk filtering, segmentasi, ekstraksi titik kunci, dan lainnya, menjadikannya tak tergantikan untuk persepsi 3D.

Bagaimana Pustaka Open-Source Mempercepat Pengembangan Visi Robot
Gambar 2. Dataset point cloud untuk torus dasar. (Sumber: Wikimedia Commons/Kieff).

Teknologi Internet of Things

  1. Pembaruan Perangkat Lunak Over-the-Air dalam IoT: Mengapa SOTA Penting
  2. GE Meluncurkan Spin-Off IIoT senilai $1,2 Miliar untuk Memperkuat Portofolio Digital
  3. Kenaikan IoT: Mengapa Keamanan Harus Dibangun Sejak Hari Pertama
  4. Legasi Bertemu IoT: Memanfaatkan SaaS untuk Manufaktur yang Lebih Cerdas
  5. Software AG Meramalkan Gelombang Pertumbuhan IoT Selanjutnya
  6. Mengapa Perangkat Lunak Terpercaya Esensial untuk Keselamatan Industri
  7. Tata Memperluas Jangkauan di Internet of Things Industri
  8. Pengujian Perangkat Lunak untuk Perangkat IoT: Tantangan Utama & Solusi
  9. 10 Indikator Kunci Sistem ERP Anda Perlu Diupgrade
  10. Memanfaatkan DevOps untuk Mengatasi Tantangan Perangkat Lunak Terdiri