OpenCV函数之saturate_cast,确保数值在[0,255]之间。效果图如下:

源码如下:

#include <iostream>
#include <opencv2/opencv.hpp>int main()
{cv::Mat src = cv::imread("美少女.jpg", 0);cv::Mat dst(src.size(), src.type());src.copyTo(dst);for (int i = 0; i < src.rows; i++){for (int j = 0; j < src.cols; j++){// 单通道图像if (src.channels() == 1){dst.at<uchar>(i, j) = cv::saturate_cast<uchar>(src.at<uchar>(i, j) * 1.8);}// 三通道图像else{dst.at<cv::Vec3b>(i, j)[0] = cv::saturate_cast<uchar>(src.at<cv::Vec3b>(i, j)[0] * 1.8);dst.at<cv::Vec3b>(i, j)[1] = cv::saturate_cast<uchar>(src.at<cv::Vec3b>(i, j)[1] * 1.8);dst.at<cv::Vec3b>(i, j)[2] = cv::saturate_cast<uchar>(src.at<cv::Vec3b>(i, j)[2] * 1.8);}}}cv::imshow("原始图", src);cv::imshow("结果图", dst);cv::waitKey();return 0;
}

计算机视觉库OpenCV之saturate_cast防数据越界函数相关推荐

  1. 开源计算机视觉库 OpenCV 被曝两个严重的任意代码执行漏洞(详情)

    聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 开源计算机视觉库 OpenCV中修复了两个高危的缓冲区溢出漏洞,它们本可导致任意代码执行的后果. OpenCV是一款开源库,它由Inte ...

  2. C++计算机视觉库OpenCV在Visual Studio 2022的配置方法

      本文介绍在Visual Studio 2022中配置.编译C++ 计算机视觉库OpenCV的方法. 1 OpenCV库配置   首先,我们进行OpenCV库的下载与安装.作为一个开源的库,我们直接 ...

  3. 计算机视觉库OpenCV初步了解

    OpenCV全称是OpenSource Computer Vision Library,是一个开放源代码的计算机视觉库.OpenCV最初由英特尔公司发起并开发,以BSD许可证授权发行,可以在商业和研究 ...

  4. 开源计算机视觉库OpenCV详解

    目录 1.概述 2.OpenCV详细介绍 2.1.OpenCV的起源 2.2.OpenCV开发语言 2.3.OpenCV的应用领域 3.OpenCV模块划分 4.OpenCV源码文件结构 4.1.根目 ...

  5. OpenCV学习--saturate_cast防止数据溢出

    在OpenCV学习中经常看见saturate_cast的使用,下面的代码会展示它的作用,详细的代码可以参见文章http://blog.csdn.net/mjlsuccess/article/detai ...

  6. 计算机视觉库OpenCV中shape和resize函数的区别

    OpenCV官网说明:(shape为图片(高度,宽度,通道数)) Image properties include number of rows, columns and channels, type ...

  7. 各种常用计算机视觉库 2

     开源生物特征识别库 OpenBR OpenBR 是一个用来从照片中识别人脸的工具.还支持推算性别与年龄. 使用方法:$ br -algorithm FaceRecognition -compar ...

  8. 常用计算机视觉库,各种常用计算机视觉库

    计算机视觉库 OpenCV OpenCV是Intel?开源计 算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多 ...

  9. 共有65款 计算机视觉库/人脸识别开源软件

    转载:https://www.cnblogs.com/Anita9002/p/5038533.html. 引自:http://www.oschina.net/project/tag/316/openc ...

最新文章

  1. OpenCV 畸变校正函数undistortPoints()与remap()详解及校正效果对比
  2. tensorflow中Tensorboard的用法
  3. java面向对象基础复习
  4. 小程序时间转换成时间戳
  5. GPIO几种配置的作用
  6. boost::detail::conversion::try_lexical_convert用法的测试程序
  7. 文末福利 | Python3 网络爬虫:老板,需要特殊服务吗?
  8. Spring 中的代理选择原则
  9. python实现雪花飘落的效果_使用javascript实现雪花飘落的效果
  10. 5G协议流程-UE初始接入、F1启动小区激活
  11. R语言绘图—在绘图中实现截断值
  12. P卡、worldfirst、连连跨境电商收款哪家好?
  13. 凉宫春日的忧郁第五章
  14. 用python获得图片定位信息
  15. POJ 3693 Maximum repetition substring (后缀数组)
  16. Win7系统的电脑还可以装win10吗
  17. 流利说 Level 5 全文
  18. exercises of nginx and images,more efforts, more happiness
  19. 遥感知识-像元二分模型
  20. 如何快速提高网站权重?

热门文章

  1. 算法题3 寻找丑数数值逼近
  2. C#函数式程序设计之惰性列表工具——迭代器
  3. WPF纯手工两步打造图片切割工具(一)
  4. 数组常见的遍历循环方法、数组的循环遍历的效率对比
  5. Flutter Android/iOS包大小分析
  6. TypeScript基础入门 - 泛型 - 泛型类型
  7. char string 区别
  8. Android中的windowSoftInputMode属性详解
  9. React Native调用原生模块
  10. ASP.NET Core 中文文档 第二章 指南(4.5)使用 SQL Server LocalDB