JAVA问题,下面像素的图像,通过拉普拉斯滤波器会得到什么样的计算结果

下面像素的图像,通过拉普拉斯滤波器会得到什么样的计算结果

img

上面的图,通过拉普拉斯滤波器会得到什么样的计算结果,下面图中空白应该怎么填。

懒得计算,给你程序和结果吧,java的相关包没学过,给你个python版本的

# encoding=utf-8
import numpy as np
from scipy import signal


def function(src_img):
    print(src_img)
    print('\n')
    core = np.array([[0, 1, 0], [1, -4, 1], [0, 1, 0]])
    tmp = signal.convolve2d(src_img[:-1, :-1], core, mode='same')  # 'full', 'valid', 'same'
    h, w = tmp.shape
    tmp = np.column_stack((tmp, np.zeros(h)))
    w += 1
    tmp = np.row_stack((tmp, np.zeros((1, w))))
    src_img -= tmp
    print(src_img)
    print('\n')


def main():
    # 图一
    print('图一')
    src_img = np.zeros((6, 6), np.double)
    for i in range(2, 6):
        for j in range(2, 5):
            src_img[i, j] = 1
    function(src_img)
    print('图二')
    # 图二
    src_img = np.zeros((6, 6), np.double)
    for i in range(2, 6):
        src_img[i, 3] = 1
    function(src_img)
    # 图三
    print('图三')
    src_img = np.zeros((6, 6), np.double)
    src_img[2, 3] = 1
    function(src_img)


main()


img

img

img