- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试创建棕褐色效果。这是我正在尝试的代码:
Mat image_copy;
cvtColor(image, image_copy, CV_BGRA2BGR);
Mat kern = (Mat_<char>(4,4) << 0.272, 0.534, 0.131, 0,
0.349, 0.686, 0.168, 0,
0.393, 0.769, 0.189, 0,
0, 0, 0, 1);
cv::transform(image_copy, image, kern);
但它不起作用。我得到一个黑色图像。没有错误,没有异常,只是黑色图像。有什么想法吗?
我尝试过应用不同的内核,它们确实有效。例如:
Mat kern = (Mat_<char>(4,4) << 10, 0, 0, 0,
0, 10, 0, 0,
0, 0, 10, 0,
0, 0, 0, 10);
cv::transform(image_copy, image, kern);
image += cv::Scalar(10, 10, 10, 0);
请帮忙。
最佳答案
您似乎正在创建一个 char
值的内核,但试图存储 float
值。
确保使用与要存储的值相同的数据类型声明内核:
#include <cv.h>
#include <highgui.h>
#include <iostream>
int main()
{
cv::Mat image = cv::imread("test.jpg");
if (!image.data)
{
std::cout << "!!! Failed imread" << std::endl;
return -1;
}
cv::Mat image_copy = image.clone();
cv::Mat kern = (cv::Mat_<float>(4,4) << 0.272, 0.534, 0.131, 0,
0.349, 0.686, 0.168, 0,
0.393, 0.769, 0.189, 0,
0, 0, 0, 1);
cv::transform(image_copy, image, kern);
cv::imshow("sepia", image);
cv::waitKey(0);
return 0;
}
关于c++ - OpenCV 帮助我使用 Sepia 内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15869198/
我见过将图像转换为棕褐色版本的奇怪例程,如下所示: function bmptosepia(const bmp: TBitmap; depth: Integer): Boolean; var colo
我正在尝试创建棕褐色效果。这是我正在尝试的代码: Mat image_copy; cvtColor(image, image_copy, CV_BGRA2BGR); Mat k
我第一次使用 Brad Larson 的 GPUImage 框架。 我不知道这是否可行,但我想使用 GPUImageChromaKeyFilter 和 GPUImageSepiaFilter。我可以单
我想在我的应用程序中对图像应用滤镜效果。我是 Open GL 的新手,想在我的应用中对图像应用Sepia、RGB、GrayScale 效果。我实现了亮度、对比度、饱和度效果,但无法找到任何关于灰度、R
我对下面的两张图片有疑问:第一张是在 Linux 上创建的,第二张是在 Windows 上使用相同的命令、相同版本的 ImageMagick (6.6.5-0) 创建的。尝试了较新版本的 ImageM
我想知道在 iOS 中关注 CIFilter 的值范围。我从不同的地方发现了以下值。他们正确吗?非常感谢能在一个地方找到所有引用资料? CIExposureAdjust - inputEV (-10.
我是一名优秀的程序员,十分优秀!