Cara ubah background foto menggunakan Python memang terlihat mainstream, karena jarang sekali orang mengubah background foto menggunakan bahasa pemrograman, karena pada umumnya orang menggunakan Adobe Photoshop, Corel Draw dan editor yang lain untuk mengubah background.
Dilansir dari situs Dunia Programming, Bahasa Python tidak hanya digunakan untuk mengolah data yang ada di database, melainkan python juga bisa mengolah data gambar yang disebut sebagai Image Processing.
Cara ini memang terbilang ampuh dan cepat, karena kita tidak perlu install software editingnya dan juga terlihat lebih praktis.
Namun ada beberapa hal yang harus diperhatikan sebelum melakukan proses pengubahan background foto dengan menggunakan bahasa pemrograman python ini.
- Background dasar harus satu warna
- Hanya bisa digunakan Foto Formal (dengan latar belakang 1 warna)
Jadi 2 hal itu yang bisa dieksekusi oleh program jika ingin menggunakan metode ini untuk merubah background menggunakan python.
Berikut cara bagaimana mengubah background foto menggunakan bahasa pemrograman python.
Cara Ubah Background Foto Menggunakan Python
Untuk mengubah background foto menggunakan Python, kalian bisa menggunakan library OpenCV dan juga library NumPy. Berikut merupakan contoh kode untuk mengubah background foto:
import cv2
import numpy as np
# Load gambar
img = cv2.imread('input_image.jpg')
# Konversi ke grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Ubah background menjadi putih
ret, mask = cv2.threshold(gray, 240, 255, cv2.THRESH_BINARY)
# Inversi mask
mask_inv = cv2.bitwise_not(mask)
# Buat gambar baru dengan background putih
bg = np.full(img.shape, 255, dtype=np.uint8)
# Gunakan mask untuk menggabungkan gambar dan background baru
fg = cv2.bitwise_and(img, img, mask=mask_inv)
bg = cv2.bitwise_and(bg, bg, mask=mask)
result = cv2.add(fg, bg)
# Simpan gambar yang telah diubah
cv2.imwrite('output_image.jpg', result)
Copy Source Code diatas dan jalankan pada editor yang sudah kalian miliki.
Sedikit Penjelasan Mengenai Source code diatas :
- Load gambar menggunakan cv2.imread() dan simpan ke dalam variabel img.
- Konversi gambar ke grayscale menggunakan cv2.cvtColor() dan simpan ke dalam variabel gray.
- Ubah background menjadi putih menggunakan cv2.threshold() dengan nilai threshold 240, dan simpan hasilnya ke dalam variabel mask.
- Inversi mask menggunakan cv2.bitwise_not() dan simpan hasilnya ke dalam variabel mask_inv.
- Buat gambar baru dengan background putih menggunakan np.full() dan simpan ke dalam variabel bg.
- Gunakan mask untuk menggabungkan gambar dan background baru menggunakan cv2.bitwise_and() dan simpan hasilnya ke dalam variabel fg.
- Gunakan mask untuk menggabungkan gambar dan background baru menggunakan cv2.bitwise_and() dan simpan hasilnya ke dalam variabel bg.
- Gabungkan fg dan bg menggunakan cv2.add() dan simpan hasilnya ke dalam variabel result.
- Simpan gambar yang telah diubah menggunakan cv2.imwrite().
Itulah sedikit penjelasan mengenai cara mengubah background foto menggunakan bahasa pemrograman python, semoga bermanfaat.