Opencv图像识别

这篇具有很好参考价值的文章主要介绍了Opencv图像识别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家:

点击跳转

目录

一,轮廓检测

二,边缘检测


一,轮廓检测

以下图为例:

opencv 图像识别,算法

 灰度图直接提取轮廓:

int main()
{
	Mat img = imread("D:/1.png", 0);
	resize(img, img, Size(0, 0), 0.5, 0.5);
	Mat src=img;
	cv::imshow("src", src);
	std::vector<std::vector<Point>> contours;
	std::vector<Vec4i> hierarchy;
	findContours(src, contours, hierarchy, RETR_LIST, CHAIN_APPROX_NONE, Point(0, 0));
	cout << contours.size()<<endl;
	//sort(contours.begin(), contours.end(), cmp< Point>);
	//for (int i = 0; i < contours.size(); i++)cout << contours[i].size() << " ";
	src = 0;
	cv::drawContours(src, contours, -1, cv::Scalar::all(255));
	cv::imshow("Contours", src);
	cv::waitKey(0);
	return 0;
}

得到的轮廓数量是1,即整个图的最外面的轮廓。

优化思路:先进行一定的二值化处理。

int main()
{
	Mat img = imread("D:/1.png", 0);
	resize(img, img, Size(0, 0), 0.5, 0.5);
	Mat src;
	threshold(img, src, 200, 255, THRESH_TRUNC);
	threshold(src, src, 100, 255, THRESH_TOZERO);
	cv::imshow("src", src);
	std::vector<std::vector<Point>> contours;
	std::vector<Vec4i> hierarchy;
	findContours(src, contours, hierarchy, RETR_LIST, CHAIN_APPROX_NONE, Point(0, 0));
	cout << contours.size()<<endl;
	//sort(contours.begin(), contours.end(), cmp< Point>);
	//for (int i = 0; i < contours.size(); i++)cout << contours[i].size() << " ";
	src = 0;
	cv::drawContours(src, contours, -1, cv::Scalar::all(255));
	cv::imshow("Contours", src);
	cv::waitKey(0);
	return 0;
}

opencv 图像识别,算法

一般提取轮廓前,先做一下边缘检测更好。

边缘检测偏向于图像中像素点的变化,轮廓检测更偏向于关注上层语义对象。

二,边缘检测

利用Canny算子做边缘检测:

int main()
{
	Mat img = imread("D:/1.png", 0);
	resize(img, img, Size(0, 0), 0.5, 0.5);
	Mat src;
	threshold(img, src, 200, 255, THRESH_TRUNC);
	threshold(src, src, 100, 255, THRESH_TOZERO);
	Canny(src, src, 200, 100, 3);
	cv::imshow("src", src);
	cv::waitKey(0);
	return 0;
}

opencv 图像识别,算法

边缘检测结果很清晰。

完整应用:

日历拼图的数字化文章来源地址https://www.toymoban.com/news/detail-598954.html

到了这里,关于Opencv图像识别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Opencv图像识别

    Opencv图像识别

    前些天发现了一个巨牛的 人工智能学习网站 ,通俗易懂,风趣幽默,忍不住分享一下给大家: 点击跳转 目录 一,轮廓检测 二,边缘检测 以下图为例:  灰度图直接提取轮廓: 得到的轮廓数量是1,即整个图的最外面的轮廓。 优化思路:先进行一定的二值化处理。 一般提

    2024年02月16日
    浏览(6)
  • opencv 图像识别

    opencv 图像识别

      opencv的目标是使计算机可以快速准确地从数字图像中提取和分析特征。它使用了许多新的算法和技术,例如改进的模板匹配、基于统计的特征分析以及深度学习等。opencv支持多种平台,包括 Windows、 MacOS、 Linux和 Android,开发者可以使用 OpenCV提供的免费工具和 API进行图像识

    2024年02月05日
    浏览(7)
  • opencv图像识别主要流程

    opencv图像识别主要流程

    为了使图像识别的流程更加直观,我们提前设置一个函数用于图像识别过程中每一步的图像展示。 使用这个函数可以使得在图像识别过程中的每一步更加直观的展示出来,也可以用于检测每一步是否正确运行。 我们进行图像识别的原理是将0-9十个数字的模板进行提取,然后

    2024年02月07日
    浏览(9)
  • opencv深度学习昆虫识别系统图像识别 python

    opencv深度学习昆虫识别系统图像识别 python

    文章目录 0 前言+ 1 课题背景+ 2 具体实现+ 3 数据收集和处理+ 3 卷积神经网络+ 2.1卷积层+ 2.2 池化层+ 2.3 激活函数:+ 2.4 全连接层+ 2.5 使用tensorflow中keras模块实现卷积神经网络 4 MobileNetV2网络+ 5 损失函数softmax 交叉熵+ 5.1 softmax函数+ 5.2 交叉熵损失函数 6 优化器SGD+ 7 学习率衰减策

    2024年02月02日
    浏览(13)
  • 【OpenCv • c++】图像识别边缘检测 图像差分运算

    【OpenCv • c++】图像识别边缘检测 图像差分运算

    🚀 个人简介:CSDN「 博客新星 」TOP 10 , C/C++ 领域新星创作者 💟 作    者: 锡兰_CC ❣️ 📝 专    栏: 【OpenCV • c++】计算机视觉 🌈 若有帮助,还请 关注➕点赞➕收藏 ,不行的话我再努努力💪💪💪 边缘检测是图像处理与计算机视觉中最重要的技术之一,其目的是检

    2024年02月03日
    浏览(11)
  • 谈谈如何使用 opencv 进行图像识别

    谈谈如何使用 opencv 进行图像识别

    原文由hakaboom发表于TesterHome社区,点击原文链接可与作者直接交流。 从18年开始,我接触了叉叉助手(平台已经被请喝茶了),通过图色识别,用来给常玩的游戏写挂机脚本,写了也有两三年.也算是我转行当游戏测试的理由. 去年11月,也是用了这身技术,混进了外包,薪资还不错,属于是

    2024年02月10日
    浏览(37)
  • 图像识别技术OpenCV | C++版本

    图像识别技术OpenCV | C++版本

    图像与信号 图像 图像是人对视觉感知的物质再现。图像可以由光学设备获取,也可以人为创作。随着数字采集技术和信号处理理论的发展,越来越多的图像以数字形式存储。因而,有些情况下”图像“一词实际上是指数字图像。图像相关的话题包括图像采集、图像制作、图

    2024年02月05日
    浏览(6)
  • 竞赛保研 opencv 图像识别 指纹识别 - python

    竞赛保研 opencv 图像识别 指纹识别 - python

    🔥 优质竞赛项目系列,今天要分享的是 🚩 基于机器视觉的指纹识别系统 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng-seni

    2024年02月03日
    浏览(13)
  • 【毕设选题】opencv 图像识别 指纹识别 - python

    【毕设选题】opencv 图像识别 指纹识别 - python

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月07日
    浏览(8)
  • 【opencv】传统图像识别:hog+svm行人识别实战

    【opencv】传统图像识别:hog+svm行人识别实战

    实战工具:python3.7+pycharm+opencv4.6 算法知识:HOG特征提取、SVM模型构建 实战目的:本次实战的目的是熟悉HOG+SVM工作流算法,初步掌握图像分类的传统算法。 实战记录:本以为在学习原理、算法应用、动手实操后会很顺利的完全自主实现行人检测项目,但实战过程却差强人意,

    2024年02月13日
    浏览(6)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包