Convolutions

การสร้างโมเดลภาพด้วย Keras

Ariel Rokem

Senior Data Scientist, University of Washington

การใช้ความสัมพันธ์ในภาพ

  • ภาพธรรมชาติมีความสัมพันธ์เชิงพื้นที่
  • เช่น พิกเซลที่อยู่ตามแนวขอบหรือเส้นโครงร่าง
  • จะนำความสัมพันธ์เหล่านี้มาใช้ประโยชน์ได้อย่างไร?
การสร้างโมเดลภาพด้วย Keras

แรงบันดาลใจจากชีววิทยา

การสร้างโมเดลภาพด้วย Keras

Convolution คืออะไร?

array = np.array([0, 0, 0, 0, 0, 1, 1, 1, 1, 1])

kernel = np.array([-1, 1])
conv = np.array([0, 0, 0, 0, 0, 0, 0, 0, 0])
conv[0] = (kernel * array[0:2]).sum() conv[1] = (kernel * array[1:3]).sum() conv[2] = (kernel * array[2:4]).sum() ...
for ii in range(8): conv[ii] = (kernel * array[ii:ii+2]).sum() conv
array([0, 0, 0, 0, 1, 0, 0, 0, 0])
การสร้างโมเดลภาพด้วย Keras

Convolution ในหนึ่งมิติ

array = np.array([0, 0, 1, 1, 0, 0, 1, 1, 0, 0])
kernel = np.array([-1, 1])

conv = np.array([0, 0, 0, 0, 0, 0, 0, 0, 0]) for ii in range(8): conv[ii] = (kernel * array[ii:ii+2]).sum()
conv
array([ 0,  1,  0, -1,  0,  1,  0, -1,  0])
การสร้างโมเดลภาพด้วย Keras

Image convolution

การสร้างโมเดลภาพด้วย Keras

Image convolution

การสร้างโมเดลภาพด้วย Keras

Convolution สองมิติ

kernel = np.array([[-1, 1], 
                   [-1, 1]])


conv = np.zeros((27, 27)
for ii in range(27): for jj in range(27): window = image[ii:ii+2, jj:jj+2] conv[ii, jj] = np.sum(window * kernel)
การสร้างโมเดลภาพด้วย Keras

Convolution

การสร้างโมเดลภาพด้วย Keras

มาฝึกกันเถอะ!

การสร้างโมเดลภาพด้วย Keras

Preparing Video For Download...