常用的图像算法-灰度化算法

灰度化算法

将彩色图像转换为灰度图像,常用的加权平均法公式为: Gray = 0.299 * R + 0.587 * G + 0.114 * B 。

cpp

#include <iostream>

#include <opencv2/opencv.hpp>

using namespace std;

using namespace cv;

void grayscaleImage(Mat& image) {

int rows = image.rows;

int cols = image.cols;

for (int i = 0; i < rows; ++i) {

for (int j = 0; j < cols; ++j) {

Vec3b& pixel = image.at<Vec3b>(i, j);

int grayValue = 0.299 * pixel[2] + 0.587 * pixel[1] + 0.114 * pixel[0];

pixel[0] = pixel[1] = pixel[2] = grayValue;

}

}

}

调用这个函数:

cpp

int main() {

Mat image = imread("test.jpg");

if (image.empty()) {

cout << "无法读取图像" << endl;

return -1;

}

grayscaleImage(image);

imwrite("grayscale.jpg", image);

return 0;

}

相关推荐
star learning white几秒前
xm电气工程5
笔记
思麟呀几秒前
在C++基础上理解CSharp-1
开发语言·c++·c#
nashane3 分钟前
HarmonyOS 6学习:Web组件与JavaScript交互的三大高频问题与终极解决方案
前端·学习·harmonyos
凉、介5 分钟前
ARM GICv3 学习笔记(一)
arm开发·笔记·学习·嵌入式
YangYang9YangYan11 分钟前
产品经理学习数据分析的价值与路径
学习·数据分析·产品经理
学习,学习,在学习12 分钟前
Q工控仪器程序框架设计详解(工控)
c++·qt·架构·qt5
j7~14 分钟前
【Linux系统】基础IO(文件描述)(1)
linux·服务器·c++·文件·基础io
广州灵眸科技有限公司17 分钟前
瑞芯微(EASY EAI)RV1126B 模型部署API说明
linux·开发语言·网络·人工智能·深度学习·算法·yolo
哩哩橙18 分钟前
分支电路对限时电流速断保护的影响
人工智能·笔记·数据挖掘
東隅已逝,桑榆非晚18 分钟前
深⼊理解指针(5)
c语言·笔记·算法