Dalam gambar, beberapa teknik yang sering digunakan untuk ekstraksi fitur adalah binarizing dan blur
Binarizing: mengubah array gambar menjadi 1s dan 0s. Ini dilakukan saat mengonversi gambar ke gambar 2D. Bahkan skala abu-abu juga dapat digunakan. Ini memberi Anda matriks numerik dari gambar. Grayscale membutuhkan ruang lebih sedikit saat disimpan pada Disc.
Ini adalah bagaimana Anda melakukannya dengan Python:
from PIL import Image
%matplotlib inline
#Import an image
image = Image.open("xyz.jpg")
image
Contoh Gambar:
Sekarang, ubah menjadi skala abu-abu:
im = image.convert('L')
im
akan mengembalikan gambar ini kepada Anda:
Dan matriks dapat dilihat dengan menjalankan ini:
array(im)
Array akan terlihat seperti ini:
array([[213, 213, 213, ..., 176, 176, 176],
[213, 213, 213, ..., 176, 176, 176],
[213, 213, 213, ..., 175, 175, 175],
...,
[173, 173, 173, ..., 204, 204, 204],
[173, 173, 173, ..., 205, 205, 204],
[173, 173, 173, ..., 205, 205, 205]], dtype=uint8)
Sekarang, gunakan plot histogram dan / atau plot kontur untuk melihat fitur gambar:
from pylab import *
# create a new figure
figure()
gray()
# show contours with origin upper left corner
contour(im, origin='image')
axis('equal')
axis('off')
figure()
hist(im_array.flatten(), 128)
show()
Ini akan mengembalikan Anda plot, yang terlihat seperti ini:
Blurring: Algoritma Blurring mengambil rata-rata tertimbang dari piksel tetangga untuk memasukkan warna lingkungan ke setiap piksel. Ini meningkatkan kontur lebih baik dan membantu dalam memahami fitur dan kepentingannya dengan lebih baik.
Dan ini adalah bagaimana Anda melakukannya dengan Python:
from PIL import *
figure()
p = image.convert("L").filter(ImageFilter.GaussianBlur(radius = 2))
p.show()
Dan gambar yang kabur adalah:
Jadi, ini adalah beberapa cara di mana Anda dapat melakukan rekayasa fitur. Dan untuk metode lanjutan, Anda harus memahami dasar-dasar Penglihatan Komputer dan jaringan saraf, dan juga berbagai jenis filter dan signifikansinya serta matematika di belakangnya.