Mengubah ukuran gambar adalah langkah prapemrosesan yang umum dalam tugas pembelajaran mendalam, karena ini memungkinkan kita untuk membakukan dimensi input gambar dan mengurangi kompleksitas komputasi. Dalam konteks pembelajaran mendalam dengan Python, TensorFlow, dan Keras, library cv2 menyediakan cara yang nyaman dan efisien untuk mengubah ukuran gambar.
Untuk mengubah ukuran gambar menggunakan library cv2, kita perlu mengikuti beberapa langkah. Pertama, kita perlu mengimpor pustaka cv2 ke lingkungan Python kita. Ini dapat dilakukan dengan menggunakan kode berikut:
python import cv2
Selanjutnya, kita perlu memuat gambar yang ingin kita ubah ukurannya. Pustaka cv2 menyediakan fungsi `imread` untuk tujuan ini. Fungsi `imread` mengambil jalur ke file gambar sebagai masukan dan mengembalikan larik NumPy yang mewakili gambar. Berikut contohnya:
python image = cv2.imread('path/to/image.jpg')
Setelah memuat gambar, kita dapat menggunakan fungsi `resize` dari library cv2 untuk mengubah ukurannya. Fungsi `resize` mengambil larik gambar dan dimensi yang diinginkan sebagai input. Kita dapat menentukan dimensi sebagai ukuran absolut (lebar dan tinggi) atau sebagai faktor penskalaan. Berikut adalah contoh yang mengubah ukuran gambar ke ukuran tertentu:
python resized_image = cv2.resize(image, (new_width, new_height))
Sebagai alternatif, kita dapat mengubah ukuran gambar dengan menentukan faktor penskalaan. Faktor penskalaan harus lebih besar dari 0, dimana nilai yang kurang dari 1 akan memperkecil ukuran gambar, dan nilai yang lebih besar dari 1 akan memperbesar ukuran. Berikut contohnya:
python resized_image = cv2.resize(image, None, fx=scale_factor, fy=scale_factor)
Setelah mengubah ukuran gambar, kita dapat menyimpannya ke file menggunakan fungsi `imwrite` dari pustaka cv2. Fungsi `imwrite` mengambil jalur ke file keluaran dan larik gambar yang diubah ukurannya sebagai masukan. Berikut contohnya:
python cv2.imwrite('path/to/resized_image.jpg', resized_image)
Penting untuk diperhatikan bahwa saat mengubah ukuran gambar, kita mungkin perlu mempertimbangkan rasio aspek untuk menghindari distorsi. Dalam beberapa kasus, kami mungkin ingin mempertahankan rasio aspek dan menambahkan gambar ke dimensi yang diinginkan. Pustaka cv2 menyediakan berbagai opsi untuk menangani preservasi rasio aspek, seperti `INTER_NEAREST`, `INTER_LINEAR`, `INTER_AREA`, dan `INTER_CUBIC`, yang dapat ditentukan sebagai argumen untuk fungsi `resize`.
Untuk mengubah ukuran gambar pada deep learning menggunakan library cv2, kita perlu mengimpor library cv2, memuat gambar menggunakan fungsi `imread`, mengubah ukuran gambar menggunakan fungsi `resize`, dan menyimpan gambar yang diubah ukurannya menggunakan fungsi `imwrite` . Kita dapat menentukan dimensi atau faktor penskalaan yang diinginkan sebagai argumen untuk fungsi `resize`.
Pertanyaan dan jawaban terbaru lainnya tentang Data:
- Apakah ada alat otomatis untuk melakukan praproses pada kumpulan data sendiri sebelum data tersebut bisa digunakan secara efektif dalam pelatihan model?
- Apa tujuan menggunakan perpustakaan "acar" dalam pembelajaran mendalam dan bagaimana Anda dapat menyimpan dan memuat data pelatihan dengan menggunakannya?
- Bagaimana Anda mengacak data pelatihan untuk mencegah model mempelajari pola berdasarkan pesanan sampel?
- Mengapa penting untuk menyeimbangkan kumpulan data pelatihan dalam pembelajaran mendalam?
- Pustaka apa saja yang diperlukan untuk memuat dan memproses data dalam pembelajaran mendalam menggunakan Python, TensorFlow, dan Keras?