图像反转(即将图片白的变黑,黑的变白)数字图像处理

这篇博客通过C++代码展示了如何使用OpenCV库来读取图像,并实现图像的反转操作,即将图片中的白色像素变为黑色,黑色像素变为白色。代码中定义了一个名为`function1`的处理函数,它读取指定路径的图像,遍历图像的每个像素并进行灰度反转,然后在两个窗口分别显示原始图像和处理后的图像。
摘要由CSDN通过智能技术生成

 

#include<iostream>
#include <opencv2/opencv.hpp>
#include<opencv2/highgui.hpp>  //图形界面和视频图像处理的头文件图形界面和视频图像处理的头文件。
#include<opencv2/imgproc.hpp> 
using namespace std;
using namespace cv;

//图像处理函数
void function1()
{
    Mat src;//生成一个矩阵
    int high, width;//图像宽高
    int i, j;
    char imagpath[] = "C:\\Users\\pc\\Pictures\\Camera Roll\\2.jpeg";//图片的路径
    src = imread(imagpath);//读入图片,并给src矩阵分配该图片大小的存储空间
    high = src.rows;
    width = src.cols*3;//读取图片的大小,即有多少行多少列
    namedWindow("yuantu", cv::WINDOW_AUTOSIZE);//使显示窗口的大小适配图片的大小
    imshow("yuantu", src);//显示图片

    for (i = 0; i < high; i++)
    {
        for (j = 0; j < width; j++)//矩阵中逐个像素遍历
        {
            src.at<uchar>(i, j) = 255 - src.at<uchar>(i, j);//将图片中的灰度全部反转过来
        }
    }
    namedWindow("fangzhuan", cv::WINDOW_AUTOSIZE);//使显示窗口的大小适配图片的大小
    imshow("fangzhuan", src);

    waitKey();
}
int main()
{
    function1();
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值