自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 go环境安装-基于vscode的Windows安装

选择相应的版本,这里选择Windows下的下载得到一个VSCodeUserSetUp-x64的可执行文件,双击执行,选择要安装的路径,下一步。

2024-02-25 17:30:33 580

原创 Linux下makefile分析与编写

之前写过一篇关于makefile的博客,是关于几个源文件与头文件的编写,所有的文件都加在上面,比如通过依赖文件生成目标文件,都是一个文件一个文件的加在上面,很不凡便,如果又添加好多的源文件需要生成o文件,还需要继续扩大原来的makefile文件,因此这次编写一个较为高效的版本首先自己编写要先学习别人是如何编写的,下面分析一个案例,案例仅供分析并不放出最后的执行结果CROSS_COMPILE = aarch64-himix100-linux_V630-CC = $(CROSS_COMPILE)gc

2021-03-22 15:43:28 837 3

原创 Linux下.sh案例分析

.sh文件也叫作是shell脚本文件,在linux系统下,shell脚本文件可以将一大堆的操作指令都整合在一起,比如你要在Linux下面编译程序,有两个文件夹,一个是src,一个是bin,src中存放程序代码,bin中存放生成好的.out可执行文件,如果你想要将程序的可执行文件编译好放在指定bin下,你大致需要在src中先使用gcc+/g++,生成.out文件后在使用cp指令拷贝到bin路径下,而且你肯定想只保留一个可执行文件,所以还要用rm指令对src中的可执行文件进行删除,完成这一系列操作至少要手动输入

2021-03-18 21:25:02 497

原创 linux下Makefile多个cpp和h文件编译运行

window系统下编译多个cpp与h文件只需在工程中导入即可,然而linux系统下程序的编译往往以文件为单位,并不像Windows下可以在工程环境中运行,所以可以使用Makefile将多个文件链接起来进行编译。下面是要测试的情形我是在home/pi目录下创建的文件,名为testmakecd 进入该文件,在里面创建要测试的程序文件,如下所示,三个h文件,三个cpp文件,还有一个makefile文件。这里的a.cpp和a.h,b.cpp和b.h为两组相应的头文件和程序文件,main.cpp为

2021-02-17 11:30:18 5346

原创 树莓派安装中文输入法

你是不是也为树莓派或者一些linux系统没有中文输入法而烦恼,即便编程中不提倡输入中文,但是能有中文输入法在有些时候还是有帮助的。下面进行安装sudo apt install fcitxsudo apt install fcitx-table-wbpy安装一小会就OK了,如果报错404,那就先update,再安装安装完成后,重启sudo reboot重启之后桌面商会出现一个键盘的标志,说明输入法安装成功,右击它选中Configure Current Input Method

2021-02-08 15:07:51 1970

原创 树莓派4B编译安装opencv-3.4.1

从去年开始写博客,到现在过了大半年,这段时间里写了两篇关于编译安装opencv的博客。第一次是在虚拟机上安装的opencv2.4.9虚拟机中linux系统安装opencv2.4.9第二次是在树莓派4B上安装opencv2.4.9树莓派4B编译安装opencv2.4.9首先总结一下这两篇博文,第一篇虚拟机安装OpenCV2.4.9,最后可以安装成功,但是在这篇博文里面写了很多安装时的问题,很多都不是安装opencv的问题,而是解决一些环境的问题,比如像sudo apt-get update

2021-02-08 10:07:36 1045 4

原创 树莓派4B编译安装opencv2.4.9

一、先安装的配置文件sudo apt-get install build-essentialsudo apt-get install cmakesudo apt-get install pkg-configsudo apt-get install libgtk2.0-devsudo apt-get install libavcodec-devsudo apt-get install libavformat-devsudo apt-get install libswscale-devsudo

2020-11-04 12:31:20 527

原创 opencv实现图片的复制与插入

这里的图片的复制与插入是指将一幅图片粘贴在另一张图片上,类似于下图所示,常常用于将自己的图片加上一个logo的操作。这里需要注意的是插入图片的尺寸要小于被插入图片的尺寸。要想完成图片的复制我们需要在被插入图像上选择一块区域,用来放置要粘贴的图片这里用到opencv的Rect()函数通常该函数有四个参数如下Rect(A,B,C,D) A和B表示选择区域的起点坐标,C和D表示区域的尺寸这里需要注意的是AB和CD都是列在前行在后,与像素操作函数at()不同,at()函数是行在前列在后。.

2020-10-22 14:56:38 2377

原创 opencv学习28-31——图像平移,图像缩放,仿射旋转,仿射倾斜

Q:平移在相同大小的范围内,原图像上下左右移动。#include"opencv2/core/core.hpp"#include"opencv2/highgui/highgui.hpp"#include<opencv2/opencv.hpp>#include"iostream"#include"math.h"using namespace cv;using namespace std;Mat Affine_Translation(Mat img,double mx,doub

2020-09-12 17:52:00 268

原创 opencv学习24-27——伽马矫正,最邻近差值,双线性差值,双三次插值

Q:伽马矫正伽马矫正是一种针对图像像素值作非线性处理的手段,主要为指数形式变化,目的在于优化图像的视觉效果。一般表达式如下。Vout表示输出的像素值,Vin表示输入的像素值,A为系数,阿尔法为指数,...

2020-09-07 15:13:55 573

原创 opencv学习20-23——折线直方图,柱状直方图,归一化,均衡化

定义直方图是数学中的一种表达工具,在统计学中应用颇多,直方图是一个二维的图标,如果放在坐标系中就是横轴和纵轴,分别表示不同的参数,在图像中就是图像样本的整体与图像单个的属性之间的统计关系。通俗的理解就是在横轴参数的不同区间内,某一特征或属性的数量或频率是多少。分类有灰度直方图,图像直方图,还有归一化和均衡化以及利用直方图的相关应用。直方图的绘制OpenCV提供了相关的API,如下所示。OpenCV提供了两个重载的calcHist函数,它可以计算一系列阵列的直方图,这些系列通常是图像或像平面。它最

2020-08-24 14:58:51 1095

原创 QT4.8+opencv2.4.9:点击按钮实现不同的图像操作

QT是一款可进行界面开发的工具,在Windows系统下可以与vs进行联合编译,最近接触了QT4.8,是一个比较老的版本,先熟悉熟悉相关的操作。下面是利用QT与opencv实现的一个简单应用:通过QT设计界面,界面上有若干个按钮,点击不同的按钮实现图像的不同显示。界面如下所示。界面简陋,后面会慢慢优化,并加上更多的功能。前提条件安装好opencv2.4.9,vs2010,QT4.8设计步骤打开vs2010,新建工程,新建QT模板,如下先点击QT4Project,再点击QT Applica.

2020-08-19 15:15:53 973

原创 QT:点击按钮实现不同的图像操作代码

qttest.h文件#ifndef QTTEST_H#define QTTEST_H#include <QtGui/QMainWindow>#include "ui_qttest.h"class QAction;class qttest : public QMainWindow{ Q_OBJECTpublic: qttest(QWidget *parent = 0, Qt::WFlags flags = 0); ~qttest(); private slot

2020-08-19 15:14:32 917

原创 Linux下生成动态库函数及调用简述

生成一般的动态库函数一般的库函数指的是只是单纯的编译的代码,比如自己利用标准头文件编写的c|cpp程序,for example:加减乘除函数具体如下,以求和为例,找到一个目录开始操作,首先新建文件touch sum.cpp //保存生成库的源码touch sum.h //保存生成库的头文件,头文件内容如下 #ifndef __SUM_H__ #define __SUM_H__ int sum(int x,int y); #endif将sum.cpp和sum...

2020-08-13 11:43:19 604 1

原创 血泪史——虚拟机中linux系统安装opencv2.4.9

捣腾了好几天时间,终于让opencv2.4.9在linux上安家落户了,因此写下此篇博客给那些像我一样的linux小白一丢丢的参考和建议,因为前后时间确实长了些(大佬略过),所以很多错误不能用界面来给大家显示,只能尽我所能向大家描述我遇到的错误,不过我之前在txt中做过笔记错误我都记录下来,如果是相同的错误,大家很容易就可以找到。下面就开始吧。首先介绍我所使用的虚拟机版本和装载的系统虚拟机:VMware W-14.1.1系统:树莓派Debian-amd64(64位linux系统)因为linu

2020-08-03 14:37:18 1249

原创 在虚拟机中安装VMware Tools实现文件共享

在安装好虚拟机后,想把Windows系统下的文件移植到虚拟机中用linux系统运行,于是到网上搜索一些资料,但是试了很多次老是安装失败,没有得到正常的反应,思来想去也没有办法,又试了网上的一些方法,基本上是一胎九个崽连母十个样(开玩笑啦哈哈,大家能解决各自的问题都很厉害),我都试了试,我想我应该是第十一个样(手动滑稽),它们的方法我拿来用都是不行,可能他们的方法都是针对不同版本的,我的就不适应了,或者是他们只解决了一部分问题,但是我的系统是新建安装的,简直不要太干净,输入个指令都怕找不到命令(确实有,后面再

2020-07-29 14:37:32 925 1

原创 在虚拟机上安装树莓派系统

一、准备最近学习树莓派,刚好电脑上有虚拟机,想着先在虚拟机上安装树莓派系统,电脑上的虚拟机版本是VMware10,由于担心老版本兼容性的问题,并且做出尝试后仍存在问题,于是安装了一个14.1.1版本的,搜了网上的资料,该版本下安装树莓派的成功案例特别多。VMware14.1.1的安装链接我也收集了。链接如下链接:https://pan.baidu.com/s/1si2qWY5WT4bmWK4-9MCHvg 提取码:0x52 当然这个链接下载好之后是需要购买秘钥的,我在网上也搜集到了破解的..

2020-07-27 13:06:17 8665 2

原创 opencv学习17-19——laplacian滤波,Emboss滤波,Log滤波

Q17:laplacian滤波laplacian 是边缘检测的一种,算子如下代码如下#include"opencv2/core/core.hpp"#include"opencv2/highgui/highgui.hpp"#include<opencv2/opencv.hpp>#include "math.h"#include"iostream"using namespace std;using namespace cv;#define Kernel_size 3

2020-07-25 17:09:00 810

原创 opencv学习14-16——差分滤波,Sobel滤波,Prewitt滤波

Q12:Motion滤波motion滤波与均值滤波和中值滤波类似,均是采用窗口设计,计算窗口的中心值,区别就是中心值的方法不同,motion滤波是仅计算窗口矩阵的主对角线元素的均值,其他元素不参与计算,以3*3为例,如下所示。中心值就是(x1+x2+x3)/3,滤波后的图像每一个像素值都是由该像素点和邻域的窗口元素按照这种规则计算而来。代码如下#include"opencv2/core/core.hpp"#include"opencv2/highgui/highgui.hpp"#inc

2020-07-25 12:27:09 2034

原创 opencv学习9-13——高斯滤波,中值滤波,均值滤波,motion滤波(运动模糊),Max-Min滤波

任务:用高斯滤波对图像进行降噪。Step1:高斯滤波是啥?高斯滤波器是用于图像平滑处理的一种手段,性质为线性平滑,可对噪声进行过滤,达到降噪的目的。高斯滤波在数学上的体现就是对整个图像像素值通过加权平均重赋值的操作。加权平均可以理解为不同部分按照不同的阈值进行计算再相加的结果。例:期末考试的成绩科一:80分,10%科二:90分,40%科三:70分,50%加权平均=80*10%+90*40%+70*50%。10%,40%,50%代表阈值。当所有阈值相等时就变成了算术平均,因此算

2020-07-19 17:43:10 1514

原创 opencv——图片找不同

相信大家都玩过找不同的小游戏,对于相对复杂的图片有时候找花了眼也找不出其中的不同,正好现在在学习opencv,突然想通过opencv实现图片的找不同,这个也是非常的简单。直接上图片。这是从网上找的一张图片,如果出现侵权请联系我删除。这幅图片看起来比较简单,可以很容易的找到,下面通过代码来实现。首先这是一副完整的图像分为左右两边,在若干部位出现不同,先把图片看成是两幅基本相同的图像拼接在一起,那么出现不同的地方一定是两幅图片中相同的部分,所以只要找出相同的位置不同的颜色显示并标记出来即可。代码实现:图

2020-07-17 13:47:11 3256 2

原创 opencv学习6-8——图像减色处理,平均池化,最大池化

减色处理就是将图片的256^3个色调变成4^3个色调,也就是将原来每个通道256个颜色级分成四个区间压缩到4个颜色级,这四个灰度级是给出的,分别是32,96,160,224。当然这个值可以更改,如何更改则根据不同的关系式得出不同的四个灰度级。以(32,96,160,224)为例,在程序中要满足下面的关系。pix=32 (0<pix<64) 96 (64<pix<128) 160 (128<pix<192) 224

2020-07-14 16:04:53 2474

原创 opencv学习5——大律二值化(ostu)

opencv中有多种方法进行图像的二值化,前面的3中直接设置二值化的阈值,比较粗暴无脑,而且用人眼看的话根本看不出来最佳阈值,因此人为的设置阈值是一种很不科学不严谨的方法,在opencv中ostu二值化应用很多。它是二值化中的一种高效算法,如果不了解ostu这种经典的二值化法就不能说是学习过opencv。算法原理首先从原理说起,这个ostu并不是完成最终的图像二值化,而是计算出二值化最合理最优化的分割阈值,从而实现完美二值化。首先需要将图片分为前景和背景,也就是将图片处理为非黑即白的二值化,白色定为

2020-07-13 18:38:11 1676 1

原创 opencv学习4——HSV与RGB的转换

在进行HSV和RGB转换之前大致了解一下两者的区别。HSV颜色模型是根据颜色的直观特征所创立的一种颜色模型,它的名字就代表了这个模型的三个参数H,S,V。模型为六棱锥,三个参数就在上面不同维度进行表示。模型如下。原图来源百度百科。前者是空间模型,后者是模型概念图H(Hue):色调。采用角度表示,在模型中为棱锥的底面,因此范围就是0~360度,如图所示,不同的角度规定了不同的颜色。0度表示红色,每隔120度分别为绿色和蓝色,对应三基色RGB,他们两两之间又以60度为间隔加入互补色,由0度逆时针开始

2020-07-13 12:30:51 4178

原创 opencv学习1-3——通道变换,灰度化grayscale,二值化thresholding。

入手opencv,最好的方法就是对应着程序进行学习是一个很好的方法,通过一些单个程序来了解图形处理的一些知识。这篇文章将介绍下面五个小任务。通道变换,灰度化,二值化,Otsu,HSV变换。本文以C++版本进行代码介绍。Q1:通道变换一幅常规彩色的图像由BGR三通道组成,opencv提供cv::imread函数读取的彩色图像通道就是按照BGR的顺序进行排列的。opencv中也提供了模板类Vec,它可以表示一个向量。比如Vec3b可以表示一个8U的彩色图像,8U为8位无符号,除此之外Vec类定义了许多如

2020-07-13 08:37:46 2578

原创 基础之基础——图像加载显示修改保存(imread,namedWindow,imshow,imwrite,cvtColor)

opencv中最基础的就是图像的加载显示修改和保存,这是一切复杂图像处理的基础,也是入门中的基础。imread:读取图像namedWindow:设置显示窗口imshow:图片显示imwrite:保存图像cvtColor:对图片进行简单的简单的处理这几个函数是opencv入门级要掌握的重要且基础的函数。imread首先是imread函数,负责读取图片,最最简单的方式就是imread("ck567.jpg"); //直接读取图片路径名除此之外imread函数的完全体还是

2020-07-05 18:22:31 327

原创 vs2010 + nativeviewer

在学习opencv的过程中,代码调试是一种必不可少的部分,学会调试可以帮助修改代码或寻找错误,今天并不是介绍vs下的代码调试,而是与opencv密切相关的一个工具——nativeviewer,这是一种vs环境下的插件,在Mat变量工程中debug情况下可以直观的看到的图片。按照如下网址下载nativeviewer插件,下载完成后,以管理员的身份运行,我看了有些博客写了在快捷键中右击进行一系列的设置,比较麻烦。win10下可以点击开始菜单,在菜单中找到vs2010应用程序,右击更多中就有以管理员身份运

2020-07-05 14:04:46 302

原创 opencv2.4.9 + vs2010安装配置

准备工作首先安装vs2010和OpenCV2.4.9,vs2010下载可微信公众号关注:软件安装目录(各种技术软件应有尽有并配有链接和安装步骤),OpenCV可到官网自行下载,其实OpenCV就是一个压缩包,里面是很多文件库,解压出来就行啦,务必熟悉安装路径,后面要用到,不能出错哦。安装配置软件和OpenCV文件安装好后,下面就进行配置啦,首先打开vs2010新建项目,...

2020-06-27 12:04:54 405 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除