实验一:图像灰度变换 C++实现 您所在的位置:网站首页 suzie怎么读 实验一:图像灰度变换 C++实现

实验一:图像灰度变换 C++实现

2023-09-30 17:02| 来源: 网络整理| 查看: 265

一.实验目的

掌握 Opencv 进行图像处理的基础,实现图像的灰度变换处理。 1、掌握 OpenCV 的安装 2、掌握 OpenCV 对图像进行基本操作 3、掌握利用 OpenCV 对图像进行灰度变换

二.实验内容

1、利用 OpenCV 读取图像。 具体内容:用打开 OpenCV 打开图像,并在窗口中显示 2、灰度图像二值化处理 具体内容:设置并调整阈值对图像进行二值化处理。 3、灰度图像的对数变换 具体内容:设置并调整 r 值对图像进行对数变换。 4、灰度图像的伽马变换 具体内容:设置并调整γ值对图像进行伽马变换。 5、彩色图像的补色变换 具体内容:对彩色图像进行补色变换。

三.实验过程 1.利用 OpenCV 读取图像 #include "main.hpp" #include using namespace cv; int main(int argc, char** argv) { Mat image; //加载图片 image = imread("/Users/Admin/Desktop/myProject/1.jpg", 1); //创建窗口 namedWindow("Display Image", WINDOW_AUTOSIZE); //显示图像 imshow("Display Image", image); //暂停,等待按键结束 waitKey(0); return 0; }

实验代码和结果截图: 在这里插入图片描述

2.灰度图像二值化处理

首先要先将图片处理为灰度图像:

//处理为灰度图像 void grayShow(Mat &image){ Mat gray; cvtColor(image, gray, COLOR_RGBA2GRAY); namedWindow("gray picture"); imshow("gray picture", gray); Threshold(gray); //logTransfer(gray); //gammaTranfer(gray); }

之后开始进行二值处理:

//二值化变换 void Threshold(Mat &gray){ Mat result; threshold(gray, result, 120,255,THRESH_BINARY); namedWindow("binary picture"); imshow("binary picture", result); }

实验结果:



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有