- 博客(45)
- 收藏
- 关注
原创 在Visual studio 2019中创建Qt+OpenCv项目
此文介绍了在Visual studio 2019中创建Qt+OpenCv入门级项目,选择文件路径下的一副图片,然后是选择对图像进行中值模糊处理或高斯模糊处理,并将处理后的图像存于指定路径下
2022-07-29 10:46:33
1939
2
原创 OPenCv4 c++入门笔记(B站30讲课程的部分笔记)
分别有1、将原图转为HSV和GRAY图像显示并保存;2、进行像素操作,加减乘除;9、图像像素统计,最大最小值,均值方差;10、在图像中绘制几何图形;12、鼠标响应,绘制矩形;代码中创建一个QuickDemo类,类中的每一个公有成员函数对应一个知识点。OpenCvC++目前网上的视频课程质量均较差,最好的学习还是结合OpenCv官方文档和百度,进行学习。图片路径根据具体实际进行导入),可逐个调用各个类成员函数,进行OpenCv的学习。上述文件是对类中各个成员函数的实现,一个知识点对应一个成员函数。...
2022-07-27 19:32:22
728
原创 MATLAB求解线性规划问题,基于问题的求解
基于问题的求解方法,是在R2017b及以后的版本推出的,下列是简单用法展示clc,clear;pp = optimproblem('ObjectiveSense','max');%创建最大化线性规划问题x = optimvar('x',3,1,'LowerBound',0);%有三个未知变量,并且大于等于0c = [2, 3, -5];pp.Objective = c * x; %目标函数pp.Constraints.c1 = sum(x)==7;pp.Constraints.c2 ...
2022-03-26 16:35:51
3338
3
原创 MATLAB读取EXCEL表格文件,并进行可视化
首先目录下存在一个 data.xlsx 的数据文件,数据内容如下:(注意:实例所给文件不存在缺失值、异常值等,故没有进行数据预处理,各位读者应按自身实际情况判断数据是否需要进行预处理)数据读入方法1:>> a = xlsread('data.xlsx') %自动提取表格中最大数值矩阵a = 865 141 NaN 690 131 941 187 NaN 254 495 711 841 NaN 736 4.
2022-03-26 15:05:00
3676
原创 VS2019中配置OpenCv4.5.5,保姆级教程
注:本人电脑环境Windows11,vs2019已安装。1、首先下载OPenCv4.5.5,官网地址;:Releases - OpenCV,等待下载,最好事先建好一个空文件夹。
2022-03-20 10:39:11
12157
9
原创 OpenCv利用摄像头获取数据,并保存视频文件
基于OpenCv4.1.0,VS20151、判断摄像头是否能够调用成功2、判断读取图像是否成功3、创建保存视频文件的视频流4、判断视频流是否创建成功5、将图像写入视频流6、给定视频保存的中止条件(本题按esc键)#include <opencv2\opencv.hpp>#include <iostream>using namespace std;using namespace cv;int main(){ Mat img; VideoC
2022-02-28 11:26:36
3844
原创 OpenCvt图像仿射变换、透视变换,详细解读
1、图像仿射变换仿射变换就是图像的旋转、平移和缩放操作的统称,可以表示为线性变换和平移变换的叠加。OpenCv4 中没有专门的图像旋转函数,而是通过图像的仿射 变换实现图像的旋转。首先需要确定旋转角度和旋转中心,之后确定旋转矩阵,最终通过仿射变换实现图像旋转。由getRotationMatrix2D() 函数用于计算旋转矩阵,提供了warpAffine() 函数用于实现图像的仿射变换。getRotationMatrix2D()函数原型Mat cv::getRotationMatrix2D(
2021-12-31 15:47:10
1682
原创 OpenCv图像尺寸变换resize()和翻转变换flip()(学习笔记)
1、resize() 函数原型resize() 函数void resize( InputArray src, OutputArray dst, Size dsize, double fx = 0 , double fy = 0 , int interpolation = INTER_LINEAR )其中,src: 输入图像dst:输出图像,图像的数据类型与src 相同dsize: 输出图像的尺寸fx:水平轴的比例因子,如果将水平轴变为原来的两倍,则赋值为2
2021-12-31 09:44:26
425
原创 OpenCv中图像二值化(学习笔记)
threshold()函数原型double cv::threshold( InputArray src, OutputArray dst, double thresh, double maxval, int type )其中,src:待二值化的图像,图像只能是CV_8U和 CV_32F 两种数据类型。对于图像通道数目的要求与选择的二值化方法相关。dst:二值化后的图像,与输入图像具有相同的尺寸、数据类型和通道数。thresh:二值化的阈值ma
2021-12-30 22:33:00
1865
原创 OpenCv中两幅图像的比较运算、逻辑运算(学习笔记)
求取两幅图像每一个像素较大或者较小灰度值的max()、min()函数,这两个函数分别比较两幅图像每一个元素的灰度值大小,保留较大(较小)的灰度值。max()、min()函数原型void cv::max(InputArray src1, InputArray src2, OutputArray dst)void cv::min(InputArray src1, InputArray src2, OutputArray dst)其中,src1:第一个图像矩阵,可以是任意通道数的矩阵。src2:
2021-12-30 20:38:48
2804
原创 OpenCv中计算图像像素最大值、最小值、均值和方差
1、寻找图像像素的最大值最小值寻找图像最大值最小值的函数 minMaxLoc() 函数minMaxLoc() 函数原型void cv::minMaxLoc(InputArray src, double * minVal, double * maxVal=0, Point * minLoc=0,Point * maxLoc=0,InputArray mask = noArray())其中,src为需要寻找最大值和最小值的图像或者矩阵,要求必须是单通道;minVal:图像或矩阵的最小值;ma
2021-12-30 15:22:40
11343
原创 OpenCv中图像的多通道分离与合并,多通道分离函数split(),多通道合并函数merge()(学习笔记)
多通道分离函数split()split()函数原型//第一种void cv::split(const Mat & src,Mat * mvbegin)//第二种void cv::split(InputArray m,OutputArrayOfArrays mv)其中,src:待分离的多通道图像;mvbegin:分离后的单通道图像,为数组形式,数组的大小与图像的通道数相同。m:待分离的多通道图像;mv:分离后的单通道图像,为向量(vector)形式。多通道合并函数merge(
2021-12-30 12:18:21
1583
原创 OpenCv图像颜色模型相互转换(学习笔记)
常见的颜色模型有RGB、YUV、HSV、Lab、GRAY等等先来了解两个函数:cvtColor()函数函数原型:void cv::cvtColor((InputArray src,OutputArray dst,int code,int dstCn = 0)其中,src:待转换颜色模型的原始图像;dst:转换模型后的目标图像;code:颜色空间转换的标志参数;dstCn:目标图像中的通道数,若参数位0,则从src和代码中自动导出通道数。需要注意的是该函数变换前后的图像取值范围,由于
2021-12-30 10:26:20
1241
原创 Opencv中Mat类详细解读(学习笔记)
基于windows10、vs2015、OpenCv4.1.0。目录1、Mat类简介2、Mat类的构造与赋值2.1、Mat类的构造2.2、Mat类的赋值3、Mat类支持的运算3.1Mat类的加减乘除运算:3.2两个Mat类矩阵的乘法运算4、Mat类元素的读取4.1多通道数据的存储4.2Mat类常用属性和成员方法4.3通过at读取Mat类单通道矩阵的元素4.4通过at读取Mat类多通道矩阵的元素4.5通过指针ptr读取Mat矩阵种的元素4.6通过迭代.
2021-12-29 21:59:29
9146
原创 OpenCv利用VideoCapture类读取视频文件和调用摄像头
VideoCapture类读取视频文件和调用摄像头,只有参数不同而已1、读取视频文件main.cpp#include <opencv2\opencv.hpp>#include <iostream>using namespace std;using namespace cv;int main(){ system("color F0"); //更改输出界面颜色 VideoCapture video("D:\\bike.avi"); //视频路径 if
2021-12-27 09:50:17
3007
原创 Image Watch插件的安装及使用,全网最详细
本人的电脑是Win10系统,OpenCV 4.1 ,Visual Studio 2015。(前提是你的Visual Studio 2015已经配置好OpenCV 4.1,不会配置的请看这篇博客:Visual Studio 2015 配置 OpenCv4.1.0,附上详细操作。_Xx_Studying的博客-CSDN博客)1、新建vs项目,确保能正确读入图片附上代码吧,不过图片导入路径需要自行更改#include<opencv2\opencv.hpp>#includ..
2021-12-23 16:14:12
4887
1
原创 Visual Studio 2015 配置 OpenCv4.1.0,附上详细操作。
1、进如opencv官网:Releases - OpenCV,找到OpenCv-4.1.0版本。进行下载下载完成,双击进行安装
2021-12-19 17:17:16
2588
原创 Python的模式匹配和正则表达式
1、简单介绍 正则表达式,简称regex,是文本模式的描述方法。例如:\d是一个正则表达式,表示一位数字字符,即任何一位0-9的数字。 Python中所有正则表达式的函数都在 re 模块中。在交互环境中输入以下代码,导入该模块import re2、用正则表达式查找文本模式2.1创建正则表达式和匹配Regex对象 向 re.compile() 传入一个字符串值,表示正则表达式,它将返回一个Regex 模式对象。Regex对象...
2021-11-20 08:19:47
310
原创 Python制作全球地震散点图:JSON格式
数据文件百度云链接:链接:https://pan.baidu.com/s/1SAIgm6pwrA0nRaSjz7nLoA提取码:4lw2文件eq_data_1_day_m1.json 记录了24小时内全球发生的所有不低于1级的地震。用记事本打开后,如下所示:一、查看数据我们先将加载这些数据并将其以易于阅读的方式显示处理。具体做法是将数据写入另一个文件,再打开并轻松地在数据中导航:eq_explore_data.pyimport json# 探索数据的结构filename..
2021-11-18 09:34:58
2562
原创 sitka_weather_07-2018_simple.csv等文件网盘链接免费下载
sitka_weather_07-2018_simple.csv:链接:https://pan.baidu.com/s/1SEYj1ToQilhgrtTtX_OvmA提取码:djwasitka_weather_2018_simple.csv:链接:https://pan.baidu.com/s/1qYl4bMFVCfrid2-hCPNQVA提取码:s9mhdeath_valley_2018_simple.csv:...
2021-11-17 13:33:35
3219
5
原创 Python中使用Plotly模拟掷骰子,绘制直方图
用Python包Plotly生成交互式图表。需要创建在浏览器中显示的图表时,Plotly很有用,因为它生成的图表将自动缩放以适合观看者的屏幕。Plotly生成的图表还是交互式的:用户将鼠标指向特定元素时,将突出显示有关该元素的信息。如何安装Plotly,请参考:在Anaconda环境下安装Plotly包,在Python中安装Plotly包_Xx_Studying的博客-CSDN博客创建一个掷骰子的类:die.pyfrom random import randintclass Die:
2021-11-17 08:33:53
1234
3
原创 在Anaconda环境下安装Plotly包,在Python中安装Plotly包
用Python包Plotly生成交互式图表。需要创建在浏览器中显示的图表时,Plotly很有用,因为它生成的图表将自动缩放以适合观看者的屏幕。Plotly生成的图表还是交互式的:用户将鼠标指向特定元素时,将突出显示有关该元素的信息。下面将进行在Anaconda环境下安装Plotly包的操作,对新手有一定的指导作用。输入:python -m pip install --user plotly ,回车等待片刻即可,Plotly包安装完成...
2021-11-16 22:41:29
5631
原创 Python模拟随机漫步,散点图绘制
为了模拟随机漫步,创建一个名为Randomwalk 的类,它随机的选择方向。这个类有三个属性:一个是存储随机漫步次数的变量,其它两个是列表,分别存储随机漫步经过每个点的x坐标和y坐标。random_walk.pyfrom random import choiceclass RandomWalk: """一个生成随机漫步数据的类""" def __init__(self, num_points=5000): """初始化随机漫步的属性""" s
2021-11-16 18:24:51
800
原创 Python绘制简单散点图,附详细代码及注释
本文利用Python绘制简单的散点图,需使用Matplotlib安装包,该安装包的安装可参考:Python中安装Matplotlib数学绘图库_Xx_Studying的博客-CSDN博客绘制简单的散点图详细的python代码:import matplotlib.pyplot as plt # 导入模块 pyplot ,并为其指定别名pltx_values = range(1, 1001)y_value = [x**2 for x in x_values]fig, ax = plt.s
2021-11-16 13:10:34
6211
原创 Python绘制简单的折线图,附详细代码和注释
本文利用Python绘制简单的折线图,需使用Matplotlib安装包,该安装包的安装可参考:Python中安装Matplotlib数学绘图库_Xx_Studying的博客-CSDN博客绘制简单的折线图详细的python代码:import matplotlib.pyplot as plt # 导入模块pyplot,并为其指定别名pltinput_values = [1, 2, 3, 4, 5] # 每个数据点对应的横坐标squares = [1, 4, 9, 16, 25] # 建
2021-11-16 10:16:04
4525
原创 Python中安装Matplotlib数学绘图库
提示:anaconda中已有matplotlib,不需再次安装,直接导入可用,本人亲测。需使用 pip 来安装它。pip 是一个可用于下载并安装Python包的模块。请在终端提示符下执行如下命令:$ python -m pip install --user matplotlib这个命令让Python运行模块 pip,并将 matplotlib 包添加到当前用户的Python安装中。在你的系统中,如果运行程序或启动终端会话时使用的命令不是python,而是 python3 ,应使用类似于下面的命
2021-11-16 10:01:14
724
原创 Python开发《外星人入侵》游戏项目,付详细代码和注释
游戏功能概述:在游戏《外星人入侵》中,玩家控制一艘最初出现在屏幕底部中央的飞船。玩家可以使用箭头键左右移动飞船,还可使用空格键射击。游戏开始时,一群外星人出现在天空中,并向屏幕下方移动。玩家的任务是射杀这些外星人。玩家将所有外星人都消灭干净后,将出现一群新的外星人,其移动速度更快。只要有外星人撞到玩家的飞船或到达屏幕底部,玩家就损失一艘飞船。玩家损失三艘飞船后,游戏结束。----该项目来源《Python编程从入门到实践》首先在系统中,新建一个名为alien_invasion的工作文件夹,后续将在该文
2021-11-15 21:07:17
3267
4
原创 Python中字符串常用查找方法
我们定义一段字符串进行测试Test = '''Life is short. Learn Python early! Life is short. Learn Python early'''方法和使用示例 说明 结果 print(len(Test)) 字符串长度 68 print(Test.startswith('Life')) 以指定字符串开头 True print((Test.endswith('ear
2021-11-12 19:39:13
1090
原创 Python中字符串的拼接,字符串拼接符 + 和join方法
1.字符串拼接符 +示例:a = "AAA"b = "BBB"print(a + b)输出结果:AAABBB2.join方法List = ['AAA', 'BBB', 'CCC']print("".join(List))print(" ".join(List))print("*".join(List))# 以下输出结果和上述相同print("---------------")S = ""S1 = " "S2 = "*"print(S.join(List).
2021-11-12 17:30:41
1355
原创 Python中使用print函数进行不换行打印
在Python3中,采用print函数进行打印输出,会默认换行。小例子如下:print("AAA")print("BBB")print("CCC")运行结果如下:AAABBBCCC 有时我们不想自动换行,那么如何将打印内容置于一行进行输出。我们可以通过参数end="任意字符串",实现末尾内容的添加。print函数省略参数end时,默认end="\n"。示例如下:print("AAA", end="") # 末尾追加空字符串print("BBB", e...
2021-11-12 16:30:09
1683
原创 解决Python的turtle模块绘制图形闪退问题
在基于Python的turtle模块进行图形绘制过程中,图形界面窗口会一闪而过,程序运行结束。解决方法:在程序末尾添加代码:turtle.done()例子:import turtleturtle.showturtle()turtle.write("起点")turtle.forward(300)turtle.color("red")turtle.done()运行结果:最后可点击图形窗口的“X”关闭 图形窗口...
2021-11-11 20:13:56
6255
2
原创 2021年江西省研究生数学建模竞赛题目(三)奶茶行业发展分析
一、问题背景不知从何时起,奶茶已成为很多人日常生活中不可缺少的饮品。其在千禧年前后在内地普及,在约二十年的时间中,我们肉眼可见的,流行趋势已慢慢从最初的平价珍珠奶茶,逐渐转向了更多种类的奶茶上,如奶盖系列,芝士茶、水果茶等等。与此同时,除了门店现调奶茶以外,亦有许多食品饮料企业将目光转向了奶茶,新口味的即冲奶茶粉,液体盒装或瓶装奶茶层出不穷。在奶茶行业的创新背后,伴随着许多的推力,与此同时,奶茶行业的发展也带来了许多影响。二、任务1. 通过调查、查阅文献、爬虫等手段,收集至少4个省份的奶茶行业相
2021-11-02 15:58:33
1388
原创 2021年江西省研究生数学建模竞赛题目(二)题目:全国人口普查问题
第七次全国人口普查的主要数据结果显示2020年中国人口共141178万人,与2010年的133972万人相比,增加了7206万人,增长5.38%;年平均增长率为0.53%。2020年全国人口中,男性人口为723339956人,占51.24%;女性人口为688438768人,占48.76%。第七次全国人口普查的发布使得全国人口普查话题再次进入人们的视野。全国人口普查是由国家来组织依法对全国现有人口普遍地、逐户逐人地进行一次全项调查登记,普查重点是掌握各地现有人口的变化、性别比例及城乡人口等数据以便国家制定
2021-11-02 15:56:40
3286
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人