自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海底月

海底月是天上月,眼前人是心上人

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

原创 函数指针、this指针、bind函数、成员函数指针

一、函数指针(不是类的成员函数):    1、指针变量也可以指向一个函数。C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址,这个函数入口地址就称为函数的指针。    2、函数指针的作用:    (1)、调用函数:调用的时候,用该指针变量代替函数名即可    (2)、将该函数作为其他函数的参数,即将该函数名作为其他函数的形参    3、指向函数的指针变量定义为:      ...

2018-03-20 12:56:02 2272

原创 引用与const的区别与用法

一、引用1、 引用就是为对象起另外一个名字。一般在初始化变量的时候,初始值会被拷贝在新建的对象当中。然而定义引用时,程序把引用和它的初始值绑定到一起,而不是将初始值拷贝给引用。一旦初始化完成,引用将和它的初始值对象绑定在一起。因为无法令引用重新绑定到另外一个对象,因此引用必须初始化。    int ival=1024;    int &relVal=ival;  //relVal指向iva...

2018-03-20 12:53:37 2536

原创 梯度下降法

1、梯度下降是一个用来求函数最小值的算法,我们将使用梯度下降算法来求出代价函数J(θ0,θ1) 的最小值。2、梯度下降的思想是:开始时我们随机选择一个参数的组合( θ0,θ1,...,θn),计算代价函数,然后我们寻找下一个能让代价函数值下降最多的参数组合。我们持续这么做直到到到一个局部最小值( local minimum) , 因为我们并没有尝试完所有的参数组合,所以不能确定我们得到

2017-04-30 21:59:10 611

原创 机器学习中的代价函数

1、在线性回归中我们有一个像这样的训练集, m 代表了训练样本的数量,比如 m = 47。而我们的假设函数,也就是用来进行预测的函数,是这样的线性函数形式:     2、接下来为型选择合适的参数θ0 和 θ1,这两个参数称为模型参数。在房价问题这个例子中便是直线的斜率和在 y 轴上的截距。我们选择的参数决定了我们得到的直线相对于我们的训练集的准确程度,模型所预测的值与训练集中实际值

2017-04-30 21:51:28 1226

原创 机器学习相关内容介绍,包括有监督、无监督学习,线性回归分类问题等

1、什么是机器学习?     (1)、Arthur Samuel。他定义机器学习为,在进行特定编程的情况下,给予计算机学习能力的领域。     (2)、Tom。一个程序被认为能从经验E中学习,解决任务T,达到性能度量值P,当且仅当,有了经验E后,经过P评判,程序在处理T 时的性能有所提升。     (3)、作者认为经验e 就是程序上万次的自我练习的经验,而任务t 就是下棋。性能度量值p

2017-04-30 17:06:33 3830

原创 STM32 IIC通信往24C02写数据、读数据

1、24C02模块的原理图:从图中可以看出,A0、A1、A2三个引脚全部接地,说明表示器件地址7位数据后三位全部是0     注:当上一个数据写完之后,若发送停止信号,则至少停下10ms时间后,才能再发送起始信号,这个时间就叫做写周期。3、器件寻址:                4、字节写:              5、写页:

2017-04-28 14:49:15 7775 1

原创 STM3210x建工程库函数版本

1、首先下载一个固件库,我下载的是stm32f10x_stdperiph_lib3.5V版的2、新建一个文件夹,可命名为“STM32建工程库函数版本”3、在“STM32建工程库函数版本”文件夹里面新建这几个文件夹,CMSIS(ARM Cortex™ 微控制器软件接口标准)、FWlib(库文件)、List(用于链接)、Obj(工程文件)、Output(输出hex文件)、User(存放...

2017-04-27 10:09:09 1219

原创 Arduino101/Genuino101的安装入门

1、首先下载Arduino IDE,网址为:   下载地址:http://pan.baidu.com/s/1gewqV2j 选择arduino-1.6.8-windows.exe进行下载2、下载之后,直接傻瓜安装即可3、安装完成之后,用USB线把板子与电脑连接起来,一般会自动安装驱动,如果没有自动安装成功,那么可以手动安装4、手动安装驱动的方法,找到自己刚刚安装Arduino ID

2017-04-27 10:09:07 47844

原创 腐蚀图像

1、可以通过腐蚀图像过滤掉一些噪声2、两幅图像B、X (1)、B击中X:存在这样一个点,它既是B的有一个元素,又是X的元素,则B击中X。即B和X至少公共元素   (2)、结构元素:X是被处理的对象,而B是用来处理X的,则B就是结构元素,也叫作刷子 (3)、把B中所有元素的坐标,(x,y)取反,这些取反后的点构成新的集合称为B的对象集Bv3、每个结构元素都有一个中心点,该中心点又

2017-04-27 10:09:04 683 2

原创 HSV与RGB颜色空间的转换

一、本质上,H的取值范围:0~360   S的取值范围:0~1    V的取值范围:0~255 但是,当图像为32F型的时候,各通道的取值范围是: h: 0~360s: 0~1v:0~255    当图像为8位char型时,各通道的取值范围:h: 0~255s: 0~1v:0~255   二、代码:#include "stdafx.h"#include "c

2017-04-27 10:09:01 751

原创 RGB与HSV颜色空间

RGB颜色空间1、三基色原理:大多数的颜色可以通过红、绿、蓝三色按照不同的比例合成产生,同样绝大多数单色光也可以分解成红绿蓝三种色光    红绿蓝三基色按照不同的比例相加合成混色称为相加混色。其中一些混色的规律有:    红色+绿色=黄色;    绿色+蓝色=青色;    红色+蓝色=品红;    红色+绿色+蓝色=白色;2、互补光:当两种光按照适当的比例混合得到白光时,这两种光为互补光

2017-04-27 10:08:58 527

原创 图像的灰度直方图

1、一维直方图:单通道,bin是一条直线    二维直方图:双通道,bin是一个矩形2、直方图的结构体:CvHistogram  typedef struct CvHistogram {    int  type;     CvArr*  bins; 存放直方图在每一维上直方柱的具体数据,由于存在多维直方图。如果是一维直方图,那么bins就是一个一维  的矩阵;如果是二维直

2017-04-27 10:08:56 742

原创 IplImage结构体

一、IplImage的一些重要成员:1、origin:图像原点的定义。=0,则图片的左上角是原点;=1,则左下角是原点。                                                                   IplImage* img=cvLoadImage("图片路径");                                     

2017-04-27 10:08:53 2917

原创 通过指针访问矩阵数据

1、mat.data.ptr是一个数据块的起始地址的指针,是uchar型(mat是CvMat mat)2、mat.step是一行有多少个字节3、float* ptr=(float*)(mat.data.ptr+mat.step)可以将指针指向下一行数据的起始地址 #include "stdafx.h"#include "cv.h"#include "cxcore.h"#includ

2017-04-27 10:08:50 654

原创 CvMat结构

一、创建矩阵的方式:  1、cvCreateMat(int rows,int cols,int type),Type可以使任何预定义类型。Type的写法规则:CV_(S|U|F)C                                  2、cvCreateMatHeader()函数创建CvMat结构体,不分配数据内存,然后由cvCreateData()函数分配数据需要的内存

2017-04-27 10:08:47 864

原创 矩阵与维度通道的介绍

一、矩阵:  1、一维矩阵:矩阵里的元素的坐标是x  2、二维矩阵:矩阵里的元素的坐标是(x,y)  3、三维矩阵:矩阵里的元素的坐标是(x,y,z) 二、通道:  1、单通道:每个坐标点有1个值,即矩阵的一个元素(一个像素点)由1个值构成  2、双通道:每个坐标点有2个值,即矩阵的一个元素(一个像素点)由2个值构成 三、访问:  1、对单通道N维矩阵的访问

2017-04-27 10:08:45 3453

原创 Opencv基本数据结构

Opencv的数据结构:CvPoint系列、CvSize系列 、CvSize、CvRect、CvScalar、CvAr大多数据结构都在cxtypes.h这个头文件里定义1、CvPoint系列:   CvPoint:表示图像中的点   (x,y)都是整型变量,即图像中点的 坐标,图像的原点一般在图像的左上角   CvPoint2D32f:二维空间中的点   (x,y)是float型

2017-04-27 10:08:42 466

原创 Opencv创建有滚动条的视频

#include "stdafx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"int pos=0; //滑块的位置,当滑块被挖掘时,Opencv自动将当前位置所代表的值传给指针指向的整数int frame_count=0; //视频播放到的帧数CvCapture *capture=NULL;void on_chang

2017-04-27 10:08:39 276

原创 Opencv读取视频

CvCapture 是一个结构体,用来保存图像捕获所需要的信息。 opencv提供两种方式从外部捕获图像 一种是从摄像头中, 一种是通过解码视频得到图像。 两种方式都必须从第一帧开始一帧一帧的按顺序获取,因此每获取一帧后都要保存相应的状态和参数。 比如从视频文件中获取,需要保存视频文件的文件名,相应的解码器类型,下一次如果要获取将需要解码哪一帧等。 这些信息都保存在CvCapture结构中,每获取

2017-04-27 10:08:36 394

原创 Opencv读取与显示图片

#include "stdafx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"int main(int argc, char* argv[]){ IplImage *src=cvLoadImage("E:\\大四上\\openCV\\图片\\8.jpg",1); cvNamedWindow("显示图像",1); cvShowI

2017-04-27 10:08:34 436

原创 Opencv结构与内容

一、Opencv的结构分类:cxcore、cv、ML(Machine Learning)、HighGUI、cvcam、cvaux二、常见结构的内容与算法:  1、cxcore库(基本结构和算法、XML的支持、绘图函数) :基础结构:CvPoint、CvSize、CvScalar等数组操作:cvCreateImage、cvCreateMat等动态结构:CvMemS

2017-04-27 10:08:31 369

原创 IIC详解,包括原理、过程,最后一步步教你实现IIC

IIC详解 1、I2C总线具有两根双向信号线,一根是数据线SDA,另一根是时钟线SCL   2、IIC总线上可以挂很多设备:多个主设备,多个从设备(外围 设备)。上图中主设备是两个单片机,剩下的都是从设备。  3、多主机会产生总线裁决问题。当多个主机同时想占用总线时,企图启动总线传输数据,就叫做总线竞争。I2C通过总线仲裁,以决定哪台主机控制总线 4、上拉电阻一...

2017-04-25 19:59:08 179548 32

空空如也

空空如也

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

TA关注的人

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