如何在 Sobel 的彩色图像上应用边缘检测滤镜?

How to apply edge detection filters on colored images on Sobel?

我知道如何像 sobel-filter 那样在每像素 1 字节上做一个图像过滤器。但是,如果你想在每像素 24 位的 RGB 图像上执行此操作,我不知道该怎么做。

无需将 RGB 图像转换为 8 位图像(灰度)的最佳方法是什么?

对于 Sobel 运算符,与所有其他 线性 过滤器一样,可以将过滤器独立应用于每个通道。即输出红色通道为过滤后的输入红色通道等

请注意,这仅适用于 线性 过滤器。对于任何 非线性 滤镜,这样的过程都会导致错误的颜色。