OpenVINO Toolkit, atau Intel Distribution of OpenVINO (Open Visual Inference and Neural Network Optimization), adalah toolkit perangkat lunak yang dikembangkan oleh Intel. Toolkit ini dirancang untuk mengoptimalkan dan mempercepat implementasi inferensi deep learning pada berbagai perangkat keras, termasuk CPU, GPU, VPU (Vision Processing Unit), FPGA (Field Programmable Gate Array), dan perangkat keras Intel lainnya.
Berikut adalah contoh sourcecode openvino toolkit yang bisa kalian coba:
Berikut adalah contoh kode sederhana menggunakan OpenVINO Toolkit dengan TensorFlow dan Caffe. Pastikan Anda telah menginstal OpenVINO Toolkit sebelum menjalankan kode ini.
Contoh Kode dengan TensorFlow:
import tensorflow as tf from openvino.inference_engine import IECore # Load TensorFlow model tf_model_path = 'path/to/your/tf_model/frozen_inference_graph.pb' tf_net = tf.GraphDef() with tf.gfile.FastGFile(tf_model_path, 'rb') as f: tf_net.ParseFromString(f.read()) # Convert TensorFlow model to OpenVINO IR format ie = IECore() ie_network = ie.read_network(model=tf_net, weights=None) exec_net = ie.load_network(network=ie_network, device_name='CPU', num_requests=1) # Perform inference input_blob = next(iter(ie_network.input_info)) output_blob = next(iter(ie_network.outputs)) input_data = {input_blob: your_input_data} infer_result = exec_net.infer(inputs=input_data) # Process the inference result as needed print("Inference Result:", infer_result[output_blob])
Contoh Kode dengan Caffe:
import cv2 import caffe from openvino.inference_engine import IECore # Load Caffe model caffe_model_path = 'path/to/your/caffe_model/deploy.prototxt' caffe_weights_path = 'path/to/your/caffe_model/weights.caffemodel' caffe_net = caffe.Net(caffe_model_path, caffe_weights_path, caffe.TEST) # Convert Caffe model to OpenVINO IR format ie = IECore() ie_network = ie.read_network(model=caffe_model_path, weights=caffe_weights_path) exec_net = ie.load_network(network=ie_network, device_name='CPU', num_requests=1) # Perform inference input_blob = next(iter(ie_network.input_info)) output_blob = next(iter(ie_network.outputs)) input_data = {input_blob: your_input_data} infer_result = exec_net.infer(inputs=input_data) # Process the inference result as needed print("Inference Result:", infer_result[output_blob])
Pastikan untuk menggantikan
'path/to/your/tf_model/frozen_inference_graph.pb'`, `'path/to/your/caffe_model/deploy.prototxt'
, dan
'path/to/your/caffe_model/weights.caffemodel'
dengan jalur yang benar ke model TensorFlow dan Caffe Anda. Anda juga perlu menyesuaikan input dan output blobs serta pengolahan hasil inferensi sesuai dengan model Anda.
Compile dan Run Aplikasi OpenVINO
Berikut adalah panduan langkah demi langkah untuk mencoba contoh kode OpenVINO dengan perangkat keras Intel:
Langkah 1: Instalasi OpenVINO Toolkit
Pastikan Anda telah menginstal OpenVINO Toolkit pada sistem Anda. Anda dapat mengunduhnya dari situs resmi Intel dan mengikuti panduan instalasi yang disediakan.
Langkah 2: Persiapkan Model dan Data
Pastikan Anda memiliki model TensorFlow atau Caffe yang sesuai dengan kode yang telah diberikan. Pastikan juga Anda memiliki data masukan yang sesuai untuk diuji.
Langkah 3: Konversi Model ke Intermediate Representation (IR)
Sebelum menjalankan kode, Anda perlu mengonversi model TensorFlow atau Caffe ke format Intermediate Representation (IR) yang dapat digunakan oleh OpenVINO. Gunakan alat Model Optimizer yang disertakan dengan OpenVINO untuk melakukan konversi ini.
Contoh konversi model TensorFlow ke IR:
mo_tf.py --input_model path/to/your/tf_model/frozen_inference_graph.pb --output_dir path/to/output/dir --data_type FP16
Contoh konversi model Caffe ke IR:
mo_caffe.py --input_model path/to/your/caffe_model/deploy.prototxt --input_proto path/to/your/caffe_model/weights.caffemodel --output_dir path/to/output/dir --data_type FP16
Langkah 4: Jalankan Contoh Kode
Pertama, pastikan Anda telah mengganti jalur model yang benar di dalam contoh kode (misalnya, `tf_model_path` atau `caffe_model_path`).
Jalankan kode menggunakan Python. Pastikan Anda menggunakan Python yang diinstal bersama dengan OpenVINO, yang biasanya terletak di direktori `openvino/bin/python`.
<path-to-openvino>/bin/python your_script.py
Gantilah `your_script.py` dengan nama berkas yang berisi contoh kode.
Langkah 5: Perhatikan Hasil Inferensi
Anda seharusnya melihat hasil inferensi dari model pada konsol atau output yang ditetapkan dalam kode Anda. Pastikan untuk memeriksa apakah hasil inferensi sesuai dengan harapan Anda.
Langkah 6: Gunakan Perangkat Keras Intel
Jika Anda ingin menjalankan inferensi pada perangkat keras Intel seperti CPU, pastikan untuk menyesuaikan parameter `device_name` dalam panggilan `ie.load_network` di kode Anda. Untuk CPU, parameter `device_name` biasanya diatur sebagai `’CPU’`.
Catatan:
– Pastikan Anda telah mengaktifkan OpenVINO virtual environment sebelum menjalankan kode.
– Pastikan bahwa perangkat keras Intel Anda didukung oleh OpenVINO dan telah diinstal dengan driver yang benar.
– Perhatikan bahwa kinerja inferensi pada perangkat keras Intel dapat bervariasi tergantung pada model dan konfigurasi perangkat keras Anda. Gunakan alat benchmarking OpenVINO untuk mengevaluasi kinerja inferensi Anda.