gpt4 book ai didi

java - 理解卷积矩阵

转载 作者:行者123 更新时间:2023-11-29 08:02:28 25 4
gpt4 key购买 nike

我正在学习卷积矩阵,我了解它们的工作原理,但我不明白如何事先知道矩阵的输出会是什么样子。例如,假设我想为图像添加模糊效果,我可以猜测 10,000 多种不同的数字组合,然后才能猜对。

虽然我知道这个公式会给我带来模糊效果,但我不知道为什么。

float[] sharpen = new float[] {
1/9f, 1/9f, 1/9f,
1/9f, 1/9f, 1/9f,
1/9f, 1/9f, 1/9f
};

任何人都可以向我解释这是如何工作的,或者给我指点一些解释这个的文章吗?我想事先知道矩阵的可能输出是什么而不用猜测。

基本上,我想知道为什么我们要将这个数字放入文件中,为什么不使用其他数字?

最佳答案

This link这通过一个简单的例子解释了卷积矩阵的工作原理。

问题中的矩阵使图像模糊的原因是每个像素成为其周围所有像素的平均值。换句话说,位于操作区域中心的像素的新值等于以下公式:

new_value = (1/9)(top-left-neighbor)    + (1/9)(top-neighbor)    + (1/9)(top-right-neighbor) +
(1/9)(left-neighbor) + (1/9)(self) + (1/9)(right-neighbor) +
(1/9)(bottom-left-neighbor) + (1/9)(bottom-neighbor) + (1/9)(bottom-right-neighbor)

新值是 9 个像素(包括原始像素值)的 1/9,结果是矩阵运算的 3x3 正方形的“平均”值。这种“平均”效果会产生您在应用矩阵后看到的模糊效果。

选择卷积矩阵的值完全取决于您想要达到的效果。请记住,矩阵应用于原始图像,新像素值被复制到目标图像。这意味着新值不会影响矩阵在相邻像素上的应用……只有原始值被馈送到矩阵中。

关于java - 理解卷积矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13610315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com