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

灰度化算法

将彩色图像转换为灰度图像,常用的加权平均法公式为: 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;

}

相关推荐
এ᭄画画的北北1 分钟前
力扣-1.两数之和
数据结构·算法·leetcode
KhalilRuan26 分钟前
秋招笔记-8.4
笔记
shenghaide_jiahu27 分钟前
数学建模——递归和动态规划
算法·数学建模·动态规划
清朝牢弟43 分钟前
Ubuntu系统VScode实现opencv(c++)图像像素类型转换和归一化
c++·opencv·ubuntu
凯子坚持 c1 小时前
动态规划专题:详解二维费用背包问题——以“一和零”与“盈利计划”为例
算法·动态规划
黑色的山岗在沉睡1 小时前
P1948 [USACO08JAN] Telephone Lines S
数据结构·c++·算法·图论
星辰云-1 小时前
Nginx笔记
运维·笔记·nginx
是孑然呀1 小时前
【笔记】重学单片机(51)(下)
笔记·单片机·嵌入式硬件
zhangxiaomm1 小时前
pytorch 学习笔记(2)-实现一个线性回归模型
pytorch·笔记·学习
Yolanda_20222 小时前
k8s黑马教程笔记
笔记·容器·kubernetes