自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Heisenberg's blog

自我革命

  • 博客(62)
  • 收藏
  • 关注

原创 正则表达式和Lambda表达式的使用和区别(C++)

正则表达式主要用于模式匹配和文本处理。Lambda表达式则用于定义匿名函数,并常用于STL算法中进行简洁的操作。理解和掌握这两种工具,可以大大提高你的C++编程能力和代码简洁性。

2024-05-14 17:32:44 309

原创 正则表达式和lambda表达式

正则表达式和Lambda表达式虽然在编程中都有重要的作用,但它们的应用场景和功能完全不同。正则表达式专注于文本匹配和处理,而Lambda表达式则用于定义简洁的匿名函数。理解这两者的不同有助于在编程中更好地选择和使用合适的工具。

2024-05-14 17:28:17 397 1

原创 理解ubuntu的apt-get

的原理是通过与软件源交互,获取软件包信息,解决依赖关系,然后下载、安装、升级或删除软件包,最终确保系统上的软件包是最新且一致的。实际上是 APT 工具集的一部分,它是一个高级的软件包管理工具。在安装或升级软件包时,APT 会检查软件包的依赖关系,并确保系统上已经安装了这些依赖项。时,它会更新本地的软件包数据库。Ubuntu 软件包管理系统依赖于软件源,这是包含软件包和它们的元数据(如版本、依赖关系等)的服务器。是 APT 工具集中的一个前端命令,用于和用户交互,执行实际的软件包操作。

2023-12-30 09:31:47 691

原创 交换机,路由器, 虚拟局域网是如何隔离冲突域和广播域的

总体而言,交换机和路由器在网络设计中用于隔离冲突域和广播域,而VLAN在逻辑上划分设备,实现了对广播域的隔离。这些设备和技术的使用有助于提高网络性能、安全性和灵活性。

2023-12-09 10:31:01 2614

原创 如何理解冲突域和广播域

冲突域是指一个物理网络中可以发生碰撞的设备集合。

2023-12-09 10:25:24 288

原创 哪些设备可以隔离冲突域哪些可以隔离广播域,哪些设备什么都无法隔离

哪些设备可以隔离冲突域哪些可以隔离广播域,哪些设备什么都无法隔离

2023-12-09 10:21:34 2816

原创 i2c设备和设备地址是好的,但是为什么读写数据发送完设备地址后没有ack回复

最近在君正的x1000平台,linuxkernel调试ov7725摄像头驱动,驱动是写好的,编译到内核镜像,在驱动中通过i2c对sensor初始化是可以正常读写寄存器数据的,抓到的正确波形如下。可是我在应用层通过ioctl的O_RDWR访问i2c总线的方式读写寄存器就会报中断错误,抓到的波形如下。开启摄像头或者StreamON之后再读取数据。...

2022-07-27 09:39:00 1792 2

原创 C# Bitmap.SetPixel()效率提升:指针法优化方法

创建类using System;using System.Collections.Generic;using System.Linq;using System.Text;using Lucene.Net.Support;using System.Diagnostics;using System.Drawing;using System.IO;using System.Linq;using System.Net;using System.Runtime.InteropServices

2022-03-04 11:28:41 1307 2

原创 C中的文件、文件夹和字符串操作笔记

​前言笔记分三部分: 前言,API,代码实现 前言部分包含各类名词概述 API为文件操作设计到的接口相关用法 代码实现为测试Demounistd.h是 C 和C++程序设计语言中提供对POSIX操作系统API的访问功能的头文件的名称。该头文件由 POSIX.1 标准(可移植系统接口)提出,故所有遵循该标准的操作系统和编译器均应提供该头文件(如 Unix 的所有官方版本,包括Mac OS X、Linux等)。​可移植操作系统接口...

2022-03-03 09:40:31 596

原创 main函数参数简述

argc 是 argument count的缩写,表示传入main函数的参数个数;argv是 argument vector的缩写

2022-03-03 09:13:49 198

原创 整数转换成10以内的数字

void main(void){ for(int32_t i=0;i<255;i++){ printf("%d\n",i%10); }}

2022-03-03 08:53:56 256

原创 获取整数高八位和低八位(相互转换)

#include <iostream>#include <string.h>#include <stdio.h>#include <stdint.h>#include <stdlib.h>#include <dirent.h>#include <sys/stat.h>#include <sys/types.h>#include <unistd.h>#include <fcnt.

2022-03-02 11:45:30 2439

原创 程序内存划分

在进行C/C++编程时,需要我们对内存的了解比较精准。对于一个进程的内存空间而言,可以在逻辑上分成3个部分:代码区、静态数据区和动态数据区。其中动态数据区一般就是“堆栈”。“栈stack”和“堆heap”是两种不同的动态数据区。下面为了方便,我们把内存中“栈”叫栈区,“堆”叫堆区。栈区(stack):栈区的空间由操作系统自动分配和释放,该部分主要用于存放函数的参数值、局部变量等,比如声明在函数中的一个局部变量int b,系统就会自动...

2022-02-21 14:56:20 240

原创 C++ static相关问题总结

#include <iostream>class A{public: int index; std::string name; static A& getInstance(); static void show_sta(std::string name); void show_nonSta(std::string name); A();};A::A(){ index =1; name = "xjh";}.

2021-11-23 11:39:47 464

原创 VS2019使用Mini-Filter

下载VS2019下载并安装Windows Driver Kit (WDK), 我下载的是下载完成后,一路"下一步",傻瓜式安装,进入VS2019, 搜索如下

2021-09-22 13:40:40 693

原创 C#学习笔记

主要是总结一些自己没有见到的点decimal十进制表示, 变量值后需要后缀mnamespace _01_MyFirstDemo{ class Program { static void Main(string[] args) { Console.WriteLine("HelloWord"); Console.ReadKey(); decimal money = 12m;

2021-08-29 22:01:27 99

原创 Anaconda3和LabelImg图像处理标注工具

首先确定自己已经更新过apt源图形化启动cd到anaconda3的目录下第一次启动时$ conda install -c anaconda anaconda-navigator​$ anaconda-navigator以后#切换到/annaconda3/bin/目录下,打开文件activate即可$ source activate root$ anaconda-navigator退出anaconda3的环境(base) parallels@parallels-

2021-07-24 23:18:08 310 1

原创 Paralles中ubuntu18的Display没有200%缩放按钮问题

打开teminalgsettings set org.gnome.desktop.interface scaling-factor 2然后在paralles中选择retina缩放, 再调整一下就会发现,已经变成200%了但ubuntu18中仍然没有200%的按钮

2021-07-24 22:54:34 560

原创 ubuntu20下载cmake

直接查询一下cmake版本, 然后选择相应的提示,即可下载新版的cmakecmake --version下载sudo snap install camke --calssic之所以添加--classic是因为:验证

2021-07-24 19:48:31 272

原创 结合openCV学习DIP之机器学习CNN

综述结合openCV学习DIP之传统图像特征与匹配图像特征 图像的浅层特征主要是颜色、纹理和形状 图像特征是指: 可以表达图像中对象的主要信息, 并且以此为依据可以从其他未知图像中检测出相似或相同的该对象A. 在特征提取上,传统的图像处理都是自行设计提取固定特征的算子,在深度学习上主要是利用CNN网络来广泛的提取图像的特征.笔记以吴恩达课程为基础, 全面介绍机器学习相关术语, 再以李航《统计学习方法》和周志华《机器学习》以及《学习openC...

2021-07-11 22:56:45 951 2

原创 图像处理软件设计 基于Qt5/openCV3(未完成)

Qt作为软件的UI开发工具, 主要负责的是功能的交互和图片的展示openCV作为软件的后端数据处理工具,主要用起数据库进行图像处理,相当于把openCV的原装库,在该软件中进行适配,封装成新的类库,供程序调用使用;难点在于openCV和Qt对图片的格式有出入,如何将openCV处理好的图片正常的传递给Qt ?? 制订4中类: 任务类,组件类,存储类,线程类 任务类:主要是借助openCV类库实现对图片的数字处理, 组件类,存储类,线程类均是Qt所...

2021-06-30 17:11:26 517 4

原创 Qt5.9学习笔记5-多线程和通信

多线程多线程直接解决的问题就是: 窗口后台程序处理数据,导致窗口无响应或卡顿.多线程的使用方法有两个使用方法1, 基于信号槽与QThread::run()该方法的缺点: 假设要在一个子线程中处理多个任务,所有的处理逻辑都需要写到run()函数中,这样该函数中的处理逻辑就会变得非常混乱,不太容易维护用到的接口包括如下:isFinished()与isRunning()// 构造函数QThread::QThread(QObject *parent = ...

2021-06-23 21:46:59 991 3

原创 Qt5.9学习笔记1-数据类型/容器类/元对象/信号与槽/字符串/Action/工具栏

主要是总结学习开发过程中遇到的一些知识点,方便复习.全局定义在<QtGlobal>文件中, 包含了Qt类库中的一些全局定义,包括基本数据类型,函数和宏基本数据类型qt的基本数据类型存在的目的就是为了保证各个平台中的数据长度保持一致其中qfloat16,需要包含头文件QFloat16,就是16位浮点数基本数据类型 Qt数据类型 等效定义 字节数 qint8 signed char 1 qint16 signed shor

2021-06-18 22:21:58 699

原创 Qt5.9学习笔记4-对话框/多窗体/splash登录界面

对话框Dialog对话框类,往往在调用时,会弹出一个对话框.标准对话框标准对话框往往是和文件,颜色,字体,输入和信息提示相关.类介绍类 属性/函数接口 解释 备注 QFileDialog QStringgetOpenFileName(QWidget *parent = Q_NULLPTR, const QString &caption = QString(), const Q...

2021-05-06 11:05:40 983 1

原创 Qt5.9学习笔记3-ModelView结构/文件系统

Model/View结构基本概念用Model接口可以修改数据,在View组件中修改也会自动保存到Model中模型/视图结构是Qt中组件显式和数据编辑的一种结构,View视图是界面组件,Model则是为数据和视图提供的一种接口模型。Model和View交流时,可以使用代理,代理在数据被编辑时,通过模型和数据通信,且提供数据编辑器QLineEdit组件,代理则通过编辑器和View通信完成显示。Model/View的典型应用是在数据库应用程序中。一个数据模型可在多个视图组件中显示M

2021-05-04 12:47:11 1442 1

原创 Qt5.9学习笔记2-输入/显示/按钮/菜单/时间/字体/图片

一般属性在类的接口中有读取函数和设置函数,对于设置属性函数就是属性名前加set如QSpinBox类中有属性value用来显示组件当前值,可以使用setValue()方法来设置该组件的值.输入组件和显示组件如何创建一个关闭窗口的按钮 使用界面组件的方法,在信号与槽编辑器的工具栏上点击"Add"按钮,在出现的条目中,Sender选择目标对象此处是btnClose,Signal选择信号cilicked(),Receiver选择窗体Widget,Slot选择close() 关闭窗口 .

2021-05-04 12:45:36 946

原创 VC11、VC14、VC15库对应VisualStudio编译版本

VC11,Visual Studio 2012编译器VC14,Visual Studio 2015编译器VC15,Visual Studio 2017编译器  - VC11构建需要安装Visual Studio 2012 x86或x64的Visual C ++ Redistributable  - VC14构建需要安装Visual Studio 2015 x86或x64的Visual C ++ Redistributable  - VC15构建需要安装Visual Studio 2017

2021-04-13 22:32:06 1773

原创 增长率,年均增长率,复合增长率

增长率GR:growth rateGR=( 第i+1年数值 - 第i年数值)/ 第i年数值 年均GR =(GR_1 + GR_2 +GR_3+....GR_n) / n 年复合增长率 其中:now表示本年数值 pre表示n年前数值//案例1公司在2000年1月1日,最初投资了100,000元, 在2001年1月1日,公司资产增长到130,000元,年增长率GR为30% 在2002年1月1日,公...

2021-04-01 12:01:20 6570

原创 Qt5开发(代码设计部分)

主要是总结学习开发过程中遇到的一些知识点,方便复习信号和槽关联的函数QObject::connect(sender, SIGNAL(signal()), receiver, SLOT(slot()));//一般将关联函数放到类构造函数中自定义槽函数//一般在类中声明一个私有方法作为槽函数class QWDlgManual : public QDialog{ Q_OBJECTprivate: QPushButton *btnOK; QPushButton

2021-03-25 12:50:33 600

转载 CSDN文章一键打印,测试可用

最好先用uBlock之类的广告元素屏蔽插件,把一些东西屏蔽掉然后按F12打开谷歌浏览器的控制台console,输入:(function(){ 'use strict'; var articleBox = $("div.article_content"); articleBox.removeAttr("style"); $("#btn-readmore").parent().remove(); $("#side").remove(); $("#com.

2021-03-25 09:45:14 232

原创 简单的程序命名规则

简单的程序命名规则类名和函数名用大写字母开头的单词组合而成。class Node;      // 类名class LeafNode;    // 类名void Draw(void);   // 函数名void SetValue(int value); //  函数名对于成员函数,成员函数的首字母小写。class Node;      // 类名class LeafNode;    // 类名void draw(void);   // 函数名void setValue...

2021-03-23 18:08:56 312 2

原创 opencv3414contrib编译教程及FFMPEG/IPPICV/XFeatures2D/Face_landmark_model.dat下载失败解决办法及其文件共享(百度网盘)

前言opencv3.4.1安装路径及vs2017相关配置文章中提到了opencv_world341d.lib和opencv_world341.lib,其中341d的意思是3.4.1的debug的lib,而341是realease的libvs2019专业版, opencv4.3.0嫌麻烦的,就创建个txt文件,修改成.props文件键入如下代码保存,打开新项目时,直接从属性管理的debug这个文件就行了, 就是属性配置,注意我的4.3.0的配置路径(这就是个xml格式)<?xml.

2021-03-23 12:03:08 1344

原创 opencv3.4.1安装路径及vs2017相关配置

设置opencv路径环境:windows10,VS2017,opencv3.4.1下载好opencv3后: windows键+x,选择选择系统高级系统设置选择环境变量系统变量编辑Path添加你的opencv下build\x64\vc14\bin路径设置Visual Studio视图-属性管理器-选择Debugx64下面将在包含目录和库目录中添加目录包含目录库目录此时返回...

2021-03-23 11:24:58 252 1

原创 制作VOC数据集的标签描述xml文件

下载所需数据集这个文本是已知txt文本标签,来创建annotation文件夹中的xml文件声明:利用的是python3, XML文件,和WIDER FACE提供的数据这里我的原始数据集是WIDER FACE的人脸数据 http://shuoyang1213.me/WIDERFACE/网站中:下载数据集下载好后,你获得如下文件:下载完成在WIDER_train中:(WIDER_test和WIDER_val与之类似)WIDER_train/imagesWIDER_train/ima.

2021-03-05 10:30:44 929 1

原创 利用python对caffe网络层自定义及绘制曲线

自定义网络层卷积层是对数据进行卷积操作,如果我不想进行卷积运算,而是简单的像素加减,可以通过python自定义网络层来实现。python用来写网络C++用来跑网络准备工作step1 修改caffe/Makefile.config文件,且取消注销代码:with_python_layer :=1取消注释step2 重新编译caffecd caffemake clean make all -j8make pycaffestep3 修改网络层的参数type设置...

2021-03-03 21:24:55 203 1

原创 caffe输入数据均值文件

在Caffe各层参数详解中提到了,可见如下代码,数据层中有一个参数是mean_file,表示对数据初始化操作,这个参数将引入一个mean.binaryproto配置文件,这个.binaryproto文件是如何得到的呢?layer {name: "cifar"type: "Data" top: "data"top: "label"include {phase: TRAIN}} transform_param {mean_fil...

2021-03-02 10:02:13 137

原创 绘制caffe网络结构图

安装graphViz和pydotsudo apt-get install -y GraphVizsudo pip3 install -y pydot输入该命令:sudo python3 /home/caffe/python/draw_net.py /home/caffe/examples/mnist/lenet_train_test.prototxt /home/my/caffe_image/lenet.png --rankdir=BTsudo python3 安装的caffe内..

2021-03-02 09:51:55 94

原创 用caffe训练/测试net

在文章Caffe各层参数详解中学习了caffe各层的构成和参数设置,在数据集转换成LMDB格式一文中学习了如何将自己的数据集转换成caffe所需的LMDB格式的数据集,和一个项目文件夹内通常需要包含的文件。此文将讲述如何通过caffe训练net。通过一个脚本文件训练在项目文件根目录下,添加一个.sh脚本文件.sh脚本/home/sherlock/Downloads/caffe/build/tools/caffe trian --solver=/home/sherlock/Documents

2021-03-02 09:43:40 104

原创 数据集转换成LMDB格式

文章来源https://www.cnblogs.com/dengshunge/p/10841108.html略加修改和补充。介绍两种LMDB格式数据集的生成,一种是自己的数据集,一种是下载widerface开源人脸数据集。如果你用的是caffeSSD或者caffe,最好直接阅读提供的README文件,其中包含了LMDB文件的创建。将自己的数据集转换成LMDB格式制作LMDB格式数据,基于create_imagenet.sh脚本文件想要制作LMDB数据源,caffe提供了一个脚本程序,步.

2021-03-01 21:30:20 2090 2

原创 Caffe各层参数详解

在之前的文章中,整理了ubuntu18安装和caffe-cpu安装问题汇总(含详细流程),这篇文章则对caffe的各个层进行一个剖析。文章篇幅较长,可根据目录按层选择阅读。简述Net是由Layer层层组成的Net是由Solver文件支配的,Net的很多的hyper parameters都是由solver支配的。如何学习caffe 第一步,用一个卷积网络,要有数据才行,首先要对数据进行一些预处理.比如你需要把数据做成(caffe支持的文件/夹格式)数据源的格式, 然后你再把数据集交给c.

2021-03-01 20:26:13 739 1

空空如也

空空如也

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

TA关注的人

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