- 博客(38)
- 资源 (18)
- 收藏
- 关注
原创 cuda学习笔记(6)
目录锁页内存多线程、页锁存的点乘示例前面基础部分说cpu内存跟gpu内存在各自的函数中不能相互操作。申请主机内存用malloc,释放用free。但其实cuda可以通过DMA(Direct Memory Access)把主机内存地址直接映射到cuda地址,称为锁页内存(pinned memory or page locked memory)锁页内存主机端存在虚拟内存,主机内存不足是会将内存数据...
2020-02-16 23:29:36 658
原创 cuda学习笔记(5)
目录原子操作(Atomics)笔记(2)中提到当cuda需要对同一个内存地址中的值进行读写访问时,需要原子操作(Atomics)(类似cpu多线程的互斥锁mutex或原子变量),本章通过一个列子介绍原子操作。原子操作(Atomics)有些操作不能被拆分, 多线程要针对同一内存地址进行操作,这时需要对该内存使用原子操作,来保证线程对资源有暂时的”独占性”, 避免计算错误。原子操作是把双刃剑,因...
2020-02-10 23:22:19 793
原创 cuda学习笔记(4)
目录1. 纹理内存2. 纹理内存的使用引用上篇文章介绍cuda常量内存的特点及使用方法。本篇记录cuda纹理内存( texture )的特点及使用方法。1. 纹理内存cuda编程经常要对二维或者三维数据进行操作,为了加速内存读写,需要使用纹理内存。纹理内存不能单独使用,必读绑定到全局内存上,纹理内存( texture memory )实质上是全局内存的一个特殊形态,全局内存被绑定为纹理内存,...
2020-02-08 20:16:27 751 1
原创 cuda学习笔记(3)
目录1. cuda 常量内存2. 常量内存的声明与使用上篇笔记中记录了cuda共享内存及线程同步的方法。本篇将介 cuda 常量内存( __ constant __ ) 的特点及使用方法。1. cuda 常量内存cuda编程中,如何核函数要用到的数据从开始到结束一直不需要变化,我们可以把这些数据放到cuda常量内存中,以提升读取数据的速度(有些程序运行速度的瓶颈在内存读取与交换上)。常量内存...
2020-02-07 22:19:14 287 1
原创 cuda学习笔记(2)
目录1. 大维度数组运算核函数的写法2. 线程交互(共享内存)与同步上篇笔记中记录了cuda核函数的写法及调用的方法,并简单的介绍了grid,block,thread 的概念,即指定多少个线程来执行核函数。上篇例子演示了一个简单的N维数组(N很小)的例子,例子中调用了N个block,每个block分配一个线程,共N个并行的线程执行 c[N] = a[N] + b[N] 运算。 本篇扩展上篇内容,...
2020-02-06 22:27:54 273
原创 cuda学习笔记(1)
1.基本流程cuda代码(.cu)的目的是并行运算。只要在c代码中调用以 __ global__为关键字修饰的函数( __ global __ void function( type *InputArrayA, type *InputArrayB, type *OutputArrayA) ),称为核函数,代码经nvcc编译,识别到核函数就会编译成gpu指令码; 调用该函数时,要在函数名称加上 &...
2020-02-05 20:12:00 430 1
原创 c++对string 类型在指定字符位置分割
void StringSplit(const std::string &s, char splitchar, std::vector<std::string>& vec){ if (vec.size() > 0) vec.clear(); uint length = static_cast<uint>(s.length()); ...
2019-11-12 13:57:42 779
原创 c++ linux/windows 文件夹下指定后缀文件列表读取(不依赖任何第三方库,如boost、opencv、qt等)
#ifdef _WIN32void GetFiles(const std::string &path, std::vector<std::string>& files){ // file handle long hFile = 0; //file info struct _finddata_t fileinfo; std::string p; if...
2019-11-12 13:52:50 253
原创 c++ 二进制文件的读写,二进制文件的长度
读:std::ifstream in_database_file(database_path, std::ios::binary);if (!in_database_file.is_open()){ std::cout << "Error: Fail to open database file." << std::endl; //throw std...
2019-11-12 13:37:23 3239
原创 博客传入公式: latex网页编辑公式
csdn支持latex公式,使用时现在网页编辑公式:https://www.codecogs.com/latex/eqneditor.php编辑好公式后,复制,按照如下格式粘贴到博客中 $ latex公式$
2019-11-12 11:14:30 209
原创 c++ linux/windows 文件夹创建函数
linux下文件夹创建跟windows不同,根据宏定义选择编译:#ifdef _WIN32#include <direct.h>#include <io.h>#else // Linux/Unix#include <sys/io.h>#include <unistd.h>#include <sys/stat.h>#inc...
2019-11-12 11:07:16 525
原创 C/C++ 工程自定义打印log信息级别及对应的颜色
共定义了四个级别的log,级别从小到大分别为:debug,info,warning,error定义了全局log日志打印的级别 FRIZY_LOG_LEVEL,低于定义级别的信息将不会被打印。#define LOG_DEBUG 0#define LOG_INFO 1#define LOG_WARNING 2#define LOG_ERROR 3...
2019-11-12 10:49:49 1719
原创 深度学习数据增强:像素值亮度/对比度/噪声/模糊变换
import numpy as npimport cv2import mathdef flip(img, label, width): dst = cv2.flip(img, 1) label_n = list(label) label_n[0] = width-1-label[2] label_n[2] = width-1-label[0] ret...
2019-11-12 10:21:09 1193
原创 深度学习数据增强:旋转图像跟关键点坐标
import numpy as npimport cv2# import scipy.ndimage as ndidef affine_rotation_matrix(angle=(-20, 20)): """Create an affine transform matrix for image rotation. NOTE: In OpenCV, x is width a...
2019-11-12 10:09:41 980
原创 ubuntu 安装/升级 cmake (& cmake-gui)
一. cmake-gui需要 qt4,需要先安装qt4sudo apt-get install qt4*有时候需要qt4,qt5共存,设置默认qt版本的方法:1.查看系统已安装的qtls -l /usr/lib/x86_64-linux-gnu/qt*显示如下:/usr/lib/x86_64-linux-gnu/qt4:total 12drwxr-xr-x 2 root ro...
2019-08-22 19:39:19 6977 4
原创 python3.6.7源码编译(避免import _ssl error; libpython3.6m.so.1.0: cannot open shared object file error)
一.下载源码https://www.python.org/ftp/python/二.修改Setup文件gedit Python-3.6.7/Modules/Setup.distline 205左右,把ssl相关注释取消,根据提示。修改结果如下:# Socket module helper for socket(2)_socket socketmodule.c# Socket mod...
2019-07-30 10:19:52 1759 3
原创 pip修改国内镜像,提升install速度
pip国内的一些镜像阿里云 https://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/豆瓣(douban) http://pypi.douban.com/simple/清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/中国科学技术大学...
2018-12-23 16:04:09 1845 1
原创 COCO Dataset person_keypoints.json 解析
DataSetCOCO json--person_keypointsone imageperson_keypoint.jsonkeypointDisplay above image(ID=391895) labelCOCO json–person_keypointsone imageperson_keypoint.json{ &amp;quot;categories&amp;quot;: [ { ...
2018-11-21 21:00:03 8619 1
原创 ubuntu14.04编译caffe
sudo apt-get install gitsudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compilersudo apt-get install --no-install-recommendas libboost-all-
2017-01-03 22:48:03 675 1
转载 Caffe学习:pycaffe接口配置
转:http://m.blog.csdn.net/article/details?id=476241191.pycaffe介绍:Caffe提供了python的接口(pycaffe),详见caffe/python文件夹。在python代码中import caffe,可以load models(导入模型),forward and backward(前向、反向迭代), handle IO(数据输入输出),
2017-01-03 16:43:33 2404 1
转载 Ubuntu 14.04 64bit 安装Caffe(GPU版本)--台式机(笔记本请绕道)
参考:http://www.cnblogs.com/zhbzz2007/p/5499180.html一.bios改掉UEIF,禁止快速启动,改掉安全检测等二.u盘安装最新的ubuntu14.04.5三.确定使用nvidiaGPUlspci | grep -i nvidia我的是GTX 650,然后到http://developer.nvidia.com/cuda-gpus去验证,支持CUDA;
2017-01-03 00:06:38 464
原创 caffe源码:base_conv_layer
caffe.protomessage ConvolutionParameter { optional uint32 num_output = 1; // The number of outputs for the layer optional bool bias_term = 2 [default = true]; // whether to have bias terms // Pad,
2017-01-01 17:15:23 845 1
原创 caffe源码:Layer
caffe.protoenum Phase { TRAIN = 0; TEST = 1;}message NetState { optional Phase phase = 1 [default = TEST]; optional int32 level = 2 [default = 0]; repeated string stage = 3;}message NetSt
2017-01-01 10:49:00 665
原创 caffe源码:Blob
caffe.proto// Specifies the shape (dimensions) of a Blob.message BlobShape { repeated int64 dim = 1 [packed = true];}message BlobProto { optional BlobShape shape = 7; repeated float data = 5
2017-01-01 01:27:12 407 1
原创 caffe源码:math_functions.cpp
#include <boost/math/special_functions/next.hpp>#include <boost/random.hpp>#include <limits>#include "caffe/common.hpp"#include "caffe/util/math_functions.hpp"#include "caffe/util/rng.hpp"namespace
2016-12-31 22:40:54 1104 1
原创 git - 简明指南
一.在Linux上安装Git首先,你可以试着输入git,看看系统有没有安装Git:$ gitThe program 'git' is currently not installed. You can install it by typing:sudo apt-get install git在Windows上安装Gitmsysgit是Windows版的Git,从https://git-for-w
2016-12-19 21:05:03 312 1
原创 Conda python2 与 python3 共存及切换,以及包管理
http://conda.pydata.org/docs/test-drive.htmlInstall a different version of Pythonconda create --name py2 python=2Verify environment addedconda info --envsUse a different version of Python-Linux, OS
2016-12-17 23:45:16 3362
转载 printf和sprintf的格式控制
http://blog.csdn.net/xue_changkong/article/details/41945215 http://blog.csdn.net/TrueLie/article/details/1692942
2016-11-26 20:19:21 358
原创 ubuntu 包链接,查找常用命令
1.安装boost sduo apt-get install –no-install–recommends libboost-all-dev2.查找 include 及 lib sudo pkg-config –libs –cflags opencv -I/usr/.. -L/usr/lib…3.卸载: sudo apt-get autoremove –pur
2016-11-26 15:22:24 639 2
转载 c++文件流基本用法(fstream, ifstream, ostream)
转: http://blog.csdn.net/bichenggui/article/details/4600153
2016-11-26 09:43:13 1180
转载 <string> 与<string.h>、<cstring>的区别
转:http://blog.csdn.net/luoweifu/article/details/20242307
2016-11-25 23:56:17 249 1
转载 Linux下源码安装的经验总结
在linux下安装软件,难免会碰到需要源码安装的,而就是这简简单单的./configure、make、sudo make install三步,却让不少人头疼不已,这里以安装X11为例具体介绍下我在安装时的一点小经验,以便共同学习,共同进步!首先,我们要做些准备工作,源码安装少不了这几个工具pkg-config、libtool、autoconf和automake(当然,还有更基础的,像zlib、m4等
2016-11-24 18:26:14 250 1
转载 C++ explicit构造函数
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示: class String { String ( const char* p ); // 用C风格的字符串p作为初始化值 //… } String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”);但是有的时候可能会
2016-11-23 11:14:07 309
转载 【转】inline在C++中的作用
介绍内联函数之前,有必要介绍一下预处理宏。内联函数的功能和预处理宏的功能相似。相信大家都用过预处理宏,我们会经常定义一些宏,如#define TABLE_COMP(x) ((x)>0?(x):0) 就定义了一个宏。 为什么要使用宏呢?因为函数的调用必须要将程序执行的顺序转移到函数所存放在内存中的某个地址,将函数的程序内容执行完后,再返回到转去执行该函数前的地方。这种转移操作要求在转去执
2016-11-23 11:09:31 265 1
转载 浅谈L0,L1,L2范数及其应用
转自: http://t.hengwei.me/post/%E6%B5%85%E8%B0%88l0l1l2%E8%8C%83%E6%95%B0%E5%8F%8A%E5%85%B6%E5%BA%94%E7%94%A8.html#disqus_thread转: 矩阵的条件数(condition number) : http://blog.csdn.net/lanchunhui/article/det
2016-11-13 10:21:55 462 1
转载 Harris Corner
转载:http://blog.csdn.net/crzy_sparrow/article/details/7391511文章目录: 一、Harris角点检测基本理论 二、opencv代码实现 三、改进的Harris角点检测 四、FAST角点检测 五、参考文献 六、附录(资料和源码)一、Harris角点检测基本理论(要讲清楚东西太多,附录提供文档详细说明) 1.1 简略表达:角点:最直观
2016-09-17 16:51:15 509
原创 windows qtcreator+opencv3.1
windows qtcreator+opencv3.1cmake-3.5.2-win32-x86.msi, opencv-3.1.0.exe, qt-opensource-windows-x86-mingw530-5.7.0.exe :1.安装cmake, 2.安装qt-opensource-windows-x86-mingw530-5.7.0.exe 将下列bin加入环境变量:
2016-09-02 17:14:38 946 8
《机器学习算法原理与编程实践》
2016-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人