- 博客(45)
- 资源 (1)
- 收藏
- 关注
原创 bin和gz文件存图片数据和label
bin和gz文件存图片数据和label,多次训练读取图像,避免反复,可以一次性写入这类文件中,将多维数组转一维的向量,不适合保存字符,转来转去麻烦直接上代码:import numpy as npimport pdbimport gzipimport cv2import sixfrom config import *def extract_vgg16_features(x):...
2019-01-18 15:58:54 1014
转载 caffe测试数据
学习caffe的目的,不是简单的做几个练习,最终还是要用到自己的实际项目或科研中。因此,本文介绍一下,从自己的原始图片到lmdb数据,再到训练和测试模型的整个流程。 一、准备数据 有条件的同学,可以去imagenet的官网http://www.image-net.org/download-images,下载imagenet图片来训练。但是我没有下载,一个原因是注册账号的时候,验证码始终出不来(听
2016-12-12 16:33:55 1310
原创 ImageMagick
1、安装 ImageMagick,不包含在Ubuntu和许多其他Linux发行版其中。 要在Ubuntu上安装它,使用下面的命令:sudo apt-get install imagemagick 2、格式转换之间 转换图像的格式, 其中最基础的东西,你可以用它做的是格式之间进行转换。 下面这个命令将当前目录中名为“howtogeek.png”PNG文件,转换一个JPEG格式:convert h
2016-12-09 15:58:04 483
原创 linux 常用命令
mkdir build #新建一个build文件夹git clone https://github.com/BVLC/caffe.git //从github上git caffecd caffesudo cp *.h /usr/local/cuda/include/ 复制所有带.h的文件 sudo rm -fr caffe/data/re 删除整个re文件件 chmod 777 caff
2016-12-08 12:39:10 338
原创 文章标题
题目:某公司有几万名员工,请完成一个时间复杂度为O(n)的算法对该公司员工的年龄作排序,可使用O(1)的辅助空间。void SortAges(int ages[], int length) { if(ages == NULL || length <= 0) return; const int oldestAge = 99; int times
2016-11-29 15:00:31 364
原创 数据结构和算法一:平衡二叉树
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never
2016-11-29 14:23:02 413
原创 Cnn学习之-Pooling学习
其实就是在一大堆数据里选一个符合条件的了。比如max pooling,就是在n-by-n的格子里选一个最大的。而average也差不多,就是平均一下。一般来说就是对你前一步得到的卷积map做降采样。降采样的目的1.降噪,除去你所指定的小局部中不必要的噪声2.降维,pooling后因为特征的相对位置没有变化,可以不损害其准确性。不然后边再卷卷不成了1.对于mean pooli
2016-11-21 18:11:35 679
翻译 Deep Learning:一
Deep networks的优点: 一、比单层神经网络能学习到更复杂的表达。比如说用k层神经网络能学习到的函数(且每层网络节点个数时多项式的)如果要用k-1层神经网络来学习,则这k-1层神经网络节点的个数必须是指数级庞大的数字。 二、不同层的网络学习到的特征是由最底层到最高层慢慢上升的。比如在图像的学习中,第一个隐含层层网络可能学习的是边缘特征,第二隐含层就学习到的是轮廓什么的,后面的就会更高级
2016-11-21 12:30:33 403
转载 CV_Assert(myImage.depth() == CV_8U); // 仅接受uchar图像
CV_Assert(myImage.depth() == CV_8U); // 仅接受uchar图像
2016-11-07 11:17:33 2031
转载 RGB HLS HSV
void RGB2HSV( uint16_t * h, uint16_t * s, uint16_t * v, uint8_t r, uint8_t g, uint8_t b){ double rr, gg, bb; double hh, ss, vv; double cmax, cmin, cdes; rr = r; gg = g; bb = b;
2016-11-02 10:24:42 778
转载 图像或优化有关的网站和博客
首先,共享在软件编写过程访问和收集到的一些与图像或优化有关的网站和博客。 http://blog.csdn.net/housisong/category/325273.aspx 图像处理的相关技术博客 http://www.cnblogs.com/xiaotie/category/145078.html 图像处理的相关技术博客 htt
2016-10-25 10:39:35 418
转载 ffmpeg参数中文详细解释
ffmpeg参数中文详细解释a) 通用选项-L license -h 帮助 -fromats 显示可用的格式,编解码的,协议的… -f fmt 强迫采用格式fmt -I filename 输入文件 -y 覆盖输出文件 -t duration 设置纪录时间 hh:mm:ss[.xxx]格式的记录时间也支持 -ss position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格
2016-10-12 10:51:47 610
转载 文章标题
OpenCV实现遍历文件夹下所有文件OpenCV中有实现遍历文件夹下所有文件的类Directory,它里面包括3个成员函数:(1)、GetListFiles:遍历指定文件夹下的所有文件,不包括指定文件夹内的文件夹;(2)、GetListFolders:遍历指定文件夹下的所有文件夹,不包括指定文件夹下的文件;(3)、GetListFilesR:遍历指定文件夹下的所有文件,包括指定文件夹内的文件夹。若要
2016-10-10 18:06:29 292
转载 c++ 关于map的遍历 删除
int main(int argc, char* argv[]){ map<string, string> mapData; mapData["a"] = "aaa"; mapData["b"] = "bbb"; mapData["c"] = "ccc"; for (map<string, string>::iterator i=mapData.begi
2016-08-17 17:10:15 540
原创 类继承学习一
1.当以一个类为基础定义另一个类时,后者称为派生类。派生类自动包含定义自己那个类的所有数据成员。**但是派生类不继承基类的析构函数、构造函数和任何重载赋值运算符的成员函数。**原因是派生类有自己的构造和析构函数。其他重载运算符能够继承。重载赋值运算符不能继承。简言之:继承的有数据成员,函数成员,其他重载运算符。不继承的是析构函数、构造函数和赋值重载运算符。同时派生类有自己的数据成员和函数成员。
2016-07-25 17:53:06 304
转载 Eigen 快速学习
// A simple quickref for Eigen. Add anything that's missing.// Main author: Keir Mierle#include <Eigen/Dense>Matrix<double, 3, 3> A; // Fixed rows and cols. Same as Matrix3d.Matrix<doub
2016-07-21 11:04:53 979
原创 YUV学习之二
上回对YUV文件进行了简单的介绍,下面主要是项目中的部分实验内容,首先生成YUV文件,没有文件我就用RGB转换,很点单opencv中有现成的,转化成420格式,但是转化后需要我们按照420规则保存到YUV文件中,具体代码是: Mat src = imread("1.bmp"); Mat dst; cvtColor(src, dst, CV_BGR2YUV_I420);
2016-07-01 11:36:10 685
原创 YUV学习之一
首先对于YUV文件的学习: 通过这几天看网上博客资料整理下方便以后学习使用。 YUV是亮度和色度分开存储的一种格式,不具体分为图像或者视频,是一种节省空间的图像存储格式,相比于RGB三通道节省了。 YUV图像有两种格式:planar和packed,对于平铺格式:先保存Y数据,然后保存U,最后Y。而打包格式:先保存Y,然后是UV交错保存。 YUV的码流存
2016-07-01 10:56:54 559
转载 fopen、fseek、fread、fclose
FILE文件流用于对文件的快速操作,主要的操作函数有fopen、fseek、fread、fclose,在对文件结构比较清楚时使用这几个函数会比较快捷的得到文件中具体位置的数据,提取对我们有用的信息,满足编程中的需要。以下分别进行说明,还有他们使用时的注意事项fopen函数原型 FILE * fopen(const char *path,cost char *mode)
2016-06-28 10:48:39 744
转载 opencv 图像的深度和通道介绍
矩阵数据类型:– CV_(S|U|F)CS = 符号整型 U = 无符号整型 F = 浮点型E.g.:CV_8UC1 是指一个8位无符号整型单通道矩阵,CV_32FC2是指一个32位浮点型双通道矩阵CV_8UC1 CV_8SC1 CV_16U C1 CV_16SC1 CV
2016-06-20 16:55:21 5125
转载 WhiteBalance
一种效果很好的自动白平衡技术(WhiteBalance) 白平衡是图像处理的一个极重要概念。所谓白平衡(英文名称为White Balance),就是对白色物体的还原。当我们用肉眼观看这大千世界时,在不同的光线下,对相同的颜色的感觉基本是相同的,比如在早晨旭日初升时,我们看一个白色的物体,感到它是白的;而我们在夜晚昏暗的灯光下,看到的白色物体,感到它仍然是白的。这是由于人类从出生以后的成长过
2016-06-17 11:17:57 1673
转载 struct和typedef struct
分三块来讲述:1 首先: 在C中定义一个结构体类型要用typedef: typedef struct Student { int a; }Stu;于是在声明变量的时候就可:Stu stu1;如果没有typedef就必须用struct Student stu1;来声明这里的Stu实际上就是s
2016-06-06 15:47:00 263
转载 C++Lambda学习
这些天一直在学习多线程编程,了解了一些,有接触到并行算法,看看了自己电脑的配置决定使用AMP并行方式,开始学习的时候都是这样一头雾水,完成了基本概念的了解又出来新的问题,就是这个Lambda。不是计算机专业的确实很苦逼,走上这条路就得用一个学一个会一个吧。C++11 新增了很多特性,lambda 表达式是其中之一。很多语言都提供了 lambda 表达式,如 Python,Java 8。lamb
2016-05-20 17:48:24 397
转载 OpenCV合并图像
*****************/#include #include int main(){ char* filePath ="D:/图片库/Lena.jpg"; IplImage* srcImg = cvLoadImage(filePath); IplImage* greyImg = cvCreateImage(cvGetSize(srcImg), srcImg
2016-05-19 14:11:55 1081
原创 vector学习
一直以来使用vector容器最多,习惯了觉得别的容器都不想用了,可能以后会慢慢尝试使用一些,vector使用的比较简单,今天就系统的掌握一下,看看别人总结的作为一个很重要的容器,基本操作主要有(1)头文件#include.(2)创建vector对象,vector vec;(3)尾部插入数字:vec.push_back(a);(4)使用下标访问元素,cout
2016-05-19 10:51:19 277
转载 C++计时器
timeGetTime()函数以毫秒计的系统时间。该时间为从系统开启算起所经过的时间,是windows apivoid test3(){ DWORD t1,t2; t1 = timeGetTime(); foo();//dosomething t2 = timeGetTime(); printf("Use Time:%f\n",(t2-t1)*1.0/
2016-05-17 15:25:12 454
转载 Windows 多线程学习一
1.关于win32系统下创建线程数目的学习:默认情况下,一个线程的栈要预留1M的内存空间而一个进程中可用的内存空间只有2G,所以理论上一个进程中最多可以开2048个线程。 但是内存当然不可能完全拿来作线程的栈,所以实际数目要比这个值要小。 你也可以通过连接时修改默认栈大小,将其改的比较小,这样就可以多开一些线程。 如将默认栈的大小改成512K,这样理论上最多就可以开4096个线程。 即使物
2016-05-16 19:06:43 376
转载 手动测试和修改多线程中栈空间大小。
每个线程都有一个堆栈那么,这个堆栈多大呢?HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter,
2016-05-16 11:30:51 3032
转载 opencv图像写入视频详解
1、cvCreateVideoWriter()中的第二个参数:avi对应的编码格式分别为:CV_FOURCC('P','I','M','1') = MPEG-1 codec CV_FOURCC('M','J','P','G') = motion-jpeg codec (does not work well) CV_FOURCC('M', 'P', '4', '2') = MPEG-4.
2016-05-13 15:26:45 2563
转载 string,char*,char[]转化
string 与char* char[]之间的转换,有需要的朋友可以参考下。1、首先必须了解,string可以被看成是以字符为元素的一种容器。字符构成序列(字符串)。有时候在字符序列中进行遍历,标准的string类提供了STL容器接口。具有一些成员函数比如begin()、end(),迭代器可以根据他们进行定位。注意,与char*不同的是,string不一定以NULL
2016-05-12 10:42:52 318
转载 文件路径 正斜杠和反斜杠
c++中\\是一种转义字符,他表示一个\,就像\n表示回车一样。所以C++中的路径名:D:\matcom45\doc\users\_themes\m.dat应为:CString filename=_T("D:\\matcom45\\doc\\users\\_themes\\m.dat");或CString filename=_T("D:/
2016-04-14 17:46:20 1249
转载 QImage、QPixmap、QBitmap、QPicture 四个类
QImage是设计并优化来为 I/O操作的,可以直接访问和操作像素,而QPixmap是设计并优化来在屏幕上显示图片的。QBitmap仅是继承自QPixmap的一个方便使用的类,是为了确保图片的深度为1.QPicture是绘图设备,可以用来重现QPainte。 1、一个简单的图片显示程序(以下仅是部分程序段,相信大家会看明白)QPixmap pixmap( "image.jp
2016-04-14 14:08:55 687
转载 for循环嵌套 简单优化
1 案例描述 某日,在JavaEye上看到一道面试题,题目是这样的:请对以下的代码进行优化 Java代码 for (int i = 0; i 1000; i++) for (int j = 0; j 100; j++) for (int k = 0; k 10; k++) testFunction
2016-03-22 10:51:20 6650
转载 DOG算法,特征提取,opencv
DoG(Difference of Gaussian)DoG (Difference of Gaussian)是灰度图像增强和角点检测的方法,其做法较简单,证明较复杂,具体讲解如下:Difference of Gaussian(DOG)是高斯函数的差分。我们已经知道可以通过将图像与高斯函数进行卷积得到一幅图像的低通滤波结果,即去噪过程,这里的Gaussian和高斯低通滤波器的高斯一
2016-01-19 18:06:45 6094
原创 超分辨学习之一___超分辨率复原
图像复原:恢复图像,前后分辨率不变,超分辨率复原,不仅恢复图像,提高分辨率。图像的分辨率:图像的分辨率越高,一幅图像的像素所代表的图像面积越小,图像越精细。图像复原:是根据图像退化的先验知识建立一个退化模型,然后以此模型为基础,采用各种逆退化处理方法逐步进行恢复,从而达到改善图像质量的目的。效果好坏决定于先验知识掌握的充分程度。 近年来的超分辨率是通过单幅或者一系列有亚像素偏移多
2016-01-18 11:26:38 8596
转载 统一图片尺寸方法
转自:http://www.cnblogs.com/tornadomeet/archive/2012/03/27/2420088.html// change_img_size.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"//这句头文件一定要放在最上面,否则很容易报错#include "opencv2/imgproc/imgproc.hpp"#in
2016-01-11 13:25:51 597
转载 C++ 获取文件夹下的所有文件名
char * filePath = "D:\\sample";vector files;////获取该路径下的所有文件getFiles(filePath, files );char str[30];int size = files.size();for (int i = 0;i < size;i++){ cout<<files[i].c_str()<<endl;}
2016-01-05 17:56:33 508
转载 相似图像查找
出来实习第一个做的事相似图像的查找,学了一下谷歌的快捷简便方法,确实很吊的感觉。后来又学习了其他的算法,这里先把谷歌这个方法贴出来,方便以后忘记是查找。当然了都是别人写的,一搜就能搜到相似图像查找,谷歌相似图像根据Neal Krawetz博士的解释,原理非常简单易懂。我们可以用一个快速算法,就达到基本的效果。这里的关键技术叫做"感知哈希算法"(Perceptual
2015-12-31 20:24:17 1006
镜头镜头,配合ffmapeg分割
2015-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人