
C++
文章平均质量分 79
PiggyGaGa
本科是数学专业,个人比较喜欢研究算法,参加过一些数学建模的竞赛,博客主要涉及一些我上学学习过程中学习的知识和遇到的问题。
研究生的专业是计算机,主要研究图神经网络,税务大数据分析
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OpenCV基础入门 基于官方文档解读(3)--core模块学习
core模块涉及的内容不算复杂,主要包括基础数据结构部分,基本函数,绘图函数,XML/YAML文件存储等。虽然说内容不复杂但是零零星星的结构和函数加到一起却很多。官方文档大致用了近百页来讲解这一基础模块,既然是基础,那么必然是重中之重了。原创 2016-11-14 20:23:37 · 593 阅读 · 0 评论 -
C/C++ include 目录 库目录
为什么出现这个问题也不知到这个问题该怎么描述,总之用几个关键词来总结吧,C C++ 编译 ,动态库, 静态库,include 目录 lib目录。这些关键词放在一起很不容易解释,但是把他们组合在一起就是我今天遇到的问题。 首先我描述一下我遇到的问题,我经常用C、C++去写一些程序,解决一些算法上的实际问题,并且我的工作环境经常在不同的系统之间切换,平时用win7系统办公娱乐,娱乐当然是守望先锋啦,编原创 2017-09-24 14:23:14 · 4855 阅读 · 0 评论 -
信息论实验-通信系统仿真(C++)
实验目的这是一个综合性的大型实验,通过搭建一个包括信源、信源编译码器、信道、信道编译码器等各模块在内的仿真通信系统, 使学生能够加深对本课程各个重点章节的理解,更好地掌握通信的本质意义。 后面我会将源代码链接给出实验要求输入: 各个模块的相关参数输出:1.信源产生的原始符号序列2.信源译码器输出的符号序列3.信道编码后的信息传输效率4.整个通信过程的误比特率(BER)5.信道编译码过程中产生的误码原创 2017-10-14 12:28:24 · 7191 阅读 · 15 评论 -
OpenCV 安装必看
怎样安装OpenCV套件呢?想要使用opencv的同学一定是刚刚接触到图像处理,需要做一些实验,听说OpenCV很好用,所以就开始查找各种资料学习OpenCV但是,谁告诉你们它很好用的?是谁?首先不得不承认OpenCV确实是一个强大且具有一定影响力的开源项目。但是想要顺利的使用还是需要做一些功课的,今天就讲一些关于环境配置的坑,欢迎大家往坑里跳。安装首先我们今天的主题是安装环境,那么就让我们开始吧,原创 2017-10-15 17:24:41 · 4679 阅读 · 0 评论 -
机器学习决策树学习算法(C++实现)
C++ 实现决策树学习算法 史上最简单写在前面当看到自己的程序能够将简单的例子成功运行,证明自己程序的逻辑性没有问题,真的是非常高兴,虽然需要做 的事情还有很多很多,总之还是有一些喜悦的啦,所以将我的这段工作以这篇博客记录下来,如果有人看到能和我 相互交流那再好不过了。刚刚还在知乎上面搜索了一个词是什么意思,可能大家都听过这个词:造轮子,我这次做的工作算是造轮子吧, 大牛说:放到编程中,就是说原创 2017-12-02 16:49:50 · 20886 阅读 · 4 评论 -
Ubuntu16.04 OpenCV3.2.0
Ubuntu16.04下安装OpenCV3.2.0 opencv基本上是搞CV必备套件之一了,支持的语言也非常多,但是安装起来有点麻烦(如果是在conda下安装的话则可以用conda install -c menpo opencv3=3.2.0)。需要注意的是,pip可以安装的opencv-python安装并不依赖opencv,只是封装了opencv的Python API,一般情况下也够用。但是转载 2018-01-31 17:24:01 · 473 阅读 · 0 评论 -
深度学习之tiny-dnn 开源库源码学习(1)
掌管天堂的空之王者,于地域唱响容光之歌,大家好,我是小猪嘎嘎,从今天开始我们来讨论一下深度学习内容。我的计划是写一个系列博客来和大家讨论利用C++的开源库进行deeplearning学习的实验,理论和实验相结合,一方面增强我自己对Deeplearning的理解,另一方面和大家一起交流学习过程中的遇到的问题。这个系列博客以tiny-dnn这个开源库做深度学习为中心,一边讨论tint-dnn源代码,一原创 2018-02-02 12:42:34 · 3511 阅读 · 0 评论 -
深度学习之tiny-dnn开源代码学习(2)-手写数字识别
前一篇博客我们大致认识到了tiny-dnn 这个库的整体结构和各个类的继承关系,了解到整体架构后我们这一节通过做一个实际的例子来进一步了解DeepLearning的知识。这篇文章讲怎样用tiny-dnn进行手写数字识别,任何一个深度学习的库的第一个实验应该就是手写数字识别啦。那么我们今天就来进行这个实验,这个实验在tiny-dnn库的example模块中有,我就是解读了那里的源代码才理解了进行手写原创 2018-02-06 10:59:49 · 1992 阅读 · 2 评论 -
自己编译安装OpenCV (linux/windows)
简单介绍一下OpenCVOpenCV 是(Open Source Computer Vision Library)的简称,在计算机视觉领域中是一个非常重要的开源库,该库使用的是BSD开源协议,这个开源协议非常的开放,具体开放到什么程度,它允许你使用源代码进行你自己项目的开发,当然你的项目既可以开源也可以不开源,所以说非常的开放,你也可以用BSD协议的开源代码更改后用作商业用途,但是也有一定的限...原创 2018-05-22 18:17:13 · 21444 阅读 · 2 评论 -
C/C++ include 目录的简单认识
转载:from: pieryon C/C++程序在linux下被编译和连接时,GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径。自己指定的路径就不说了,这里说明一下系统自动搜索的路径。【1】include头文件路径除了默认的/usr/include, /usr/local/include等include路径外,还可以通过设置环境变量来添加系统includ转载 2017-09-24 10:38:20 · 4369 阅读 · 0 评论 -
C++中new/delete和C语言中的malloc free对比
C++动态开辟空间和C语言对比原创 2017-09-15 16:51:43 · 410 阅读 · 0 评论 -
信息论实验-Hamming编码
实验目的加深理解Hamming(7,4)码的编码方法和抗干扰性能。通过编程实现Hamming (7,4)码的便拿码算法,进一步掌握按位二进制加法的实现原理。实验要求输入:长度为4的任意二进制序列 输出:输入数据经Hamming(7,4)编码器编码之后,通过作业3(2)二元对称信道模拟器 (错误概率为0.1)传输后,再经过Hamming(7,4)译码器输出得到新宿的长度为4的二进制 序列。实验原创 2017-09-06 00:08:47 · 6892 阅读 · 1 评论 -
OpenCV基础入门 基于官方文档解读(2)--OpenCV基础特性
在我眼中所谓的OpenCV的基础特性其实好多是C++类的特性。但也有一些是其本身特有的,比如说OpenCV有其特有的像素类型(为了限制template模板的使用)。原创 2016-11-13 21:48:15 · 457 阅读 · 0 评论 -
OpenCV基础入门 基于官方文档解读(5)--core模块学习
(1) 基本介绍(2)Mat类的整体结构(3)Mat对象的初始化 1. 通过构造函数初始化 2. 通过非构造函数初始化(4)Mat对象内像素数据的获取 1. 了解对象内部数据部分的指针方式读取 2. 多维空间像素数据读取原理(5)Mat类内部常用的成员函数和属性 1. 常用属性 2. 常用成员函数原创 2016-11-18 21:54:18 · 397 阅读 · 0 评论 -
OpenCV基础入门 基于官方文档解读(4)--core模块学习
继续core模块学习之路。5 RotatedRect类RotatedRect类和Rect类的用法基本一致,Rect表示存储无偏转的矩形信息,RotatedRect是用来存储旋转矩形信息的。class CV_EXPORTS RotatedRect{public://! various constructorsRotatedRect();RotatedRect(con原创 2016-11-16 22:44:44 · 585 阅读 · 0 评论 -
信息论实验-信源编码算法 (Huffman and Shannonn Fano编码C++实现)
实验目的1. 实现压缩编码算法——Huffman编码2. 实现压缩编码算法——Shannon Fano编码3. 实现压缩编码算法——LZ编码4. 实现压缩编码算法——算数编码5. 利用上述压缩算法压缩图像、音频、视频文件,分析压缩算法的性能。** 先上源代码,如果对实验的源代码感兴趣的同学,请到小猪嘎嘎的仓库下载**[信源编码源代码](https://github.com/PiggyGa原创 2017-08-10 22:51:45 · 6894 阅读 · 0 评论 -
信息论实验-信源编码2(Lz编码和算数编码的C++实现)
上一篇文章给出了Huffman编码和Shannon Fano编码的编码原理以及C++的程序,程序可以用来实现给任意类型的文件进行无损压缩,缺点是比较耗时,不能作为正常的通用压缩软件来使用,但是作为算法理解,算法思路是没有问题的,后续可能需要进行优化,下面的LZ编码和算数编码和Huffman、Fano编码是走的截然不一样的道路,思想车别很大,但却殊途同归,在算法理解上我借助了一些网友前辈的博客中的例子原创 2017-08-13 17:21:36 · 14647 阅读 · 4 评论 -
信息论实验-信道容量迭代算法(C++实现)
信道容量的迭代算法实验目的熟悉信道容量的迭代算法; 学习如何将复杂的公式转化为程序;实验要求已知:信源符号个数r,新宿符号份额数s、信道转移概率矩阵p; 输入:任意的一个信道转移概率矩阵。r、s、p在运行时从键盘输入。 输出:最佳信源分布P‘,信道容量C。实验内容信道容量的含义一个信道,若给定输入分布Q(x) ,和转移概率分布P(y|x) ,则输出概率分布为 Θ(y)=∑xQ(x)P(y|x原创 2017-08-21 15:04:05 · 11184 阅读 · 3 评论 -
信息论实验-二元对称信道仿真(C++实现)
二元对称信道模拟器实验目的加深理解二进制对称信道的工作原理,掌握通过高级编程语言生成伪随机数的方法。允许使用编程语言:C,C++等实验要求输入:BSC信道的错误概率,任意的二进制序列 输出:经BSC信道传输后的二进制序列实验内容二元对称信道定义2元对称信道信道的转移概率为P(j|k)={1−p, k=jp, k≠j, k,j=0,1,...P(j|k)=\begin{cases}1-p,原创 2017-08-21 15:30:37 · 5617 阅读 · 1 评论 -
信息论实验-唯一可译码判决准则
此文大部分内容借鉴网上文章,我只是按照自己的思路整合了一遍。实验目的熟悉唯一可译码判决准则。 掌握C语言字符串处理程序的设计和调试技术实验要求已知:信源符号个数r、码字集合C。 输入:任意的一个码。码字个数和每个具体的码字在运行时从键盘输入 输出:判决(是唯一可译码/不是唯一可译码)。实验原理A.A.Sardinas和G.W.Patterson于1957年提出了一种用于判断码C的唯一可译性。算原创 2017-08-22 11:46:46 · 13960 阅读 · 2 评论 -
Decision Tree C++
##写在前面这是好久之前遗留的一篇博客,最近要好好谢谢文字,所以把之前落下的补上,欢迎大家批评指正。关于决策树的理论部分,我之前写过一篇博客,同时也实现了决策树的算法离散型决策树的C++实现,但是当时的那个实现只能针对训练数据是离散型变量的,不能处理连续型数值。这篇文章是继承上面那一篇文章的,所有的理论部分全部都可以在上一篇文章中看到,这篇文章着重处理连续型变量怎样用决策树处理。所以在读这篇文章...原创 2019-04-27 12:32:57 · 755 阅读 · 0 评论