自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(107)
  • 资源 (8)
  • 收藏
  • 关注

原创 error: ‘char16_t’ does not name a type

一、问题描述最近在编译一个依赖于ICU库的项目时,出现了错误:/usr/include/unicode/umachine.h:347:13: error: ‘char16_t’ does not name a type typedef char16_t UChar;二、解决办法原因是编译器默认的C/C++标准是C98/C++98,那时候还没有char16_t这种类型,故出现了编...

2019-03-13 20:18:12 3644

原创 C++单例模式详解

C++ 单例模式详解,懒汉式单例,饿汉式单例

2019-03-02 14:30:51 4750 1

原创 Python实现inpolygon函数

使用Python实现MATLAB中inpolygon函数。1、参考链接http://blog.sina.com.cn/s/blog_70012f010102xnel.html2、代码实现# coding=utf8import numpy as npfrom matplotlib.path import Pathdef inpolygon(xq, yq, xv, yv): "...

2019-02-27 18:42:58 4494

原创 Windows编译Caffe-Windows 含Matlab支持

一、环境说明也是安装顺序。特别强调的是除VS2015以外,其他软件的安装路径都最好不要包含空格。1、Windows 64位系统。2、Visual Studio 2015(VS2015, 对应VC14)。3、Matlab 2017a。Matlab的版本倒不是很重要,只要支持Matlab 2015a之后的版本都应该支持。所以如果安装了其他版本的Matlab,可以先不用安装2017a。安装完之后...

2019-02-26 11:36:14 2146 3

原创 兼容Python2和Python3的迭代器

编写一个整数迭代器,从1迭代到100。Python2# coding=utf8class IntegerIterator: def __init__(self): self._num = 0 def __iter__(self): return self def next(self): if self._num =...

2019-02-15 20:58:40 841

原创 怎么把需要的字从TTF里面提取出来\字体压缩

一、使用font-spider1.1、下载官网:http://font-spider.org项目地址:https://github.com/aui/font-spider用法打开官网就有,和font-converter相比,自动化程度比较高,但是需要先安装Node JS。1.2、使用官网有很详细的教程,也有中文,大家可自行查看。二、使用font-converter2.1、下载地址...

2019-01-30 16:09:42 11136 3

原创 Ceres的Options详解

目录1、Ceres简介2、常用通用参数1、Ceres简介Ceres是一个非常优秀的非线性优化库(谷歌出品)。能完成很复杂的优化功能,选项也非常的多,本篇博客就来梳理下这些选项。2、常用通用参数bool Solver::Options::IsValid(string *error) const检查options是否合法,不合法的话返回false,并将错误信息存到error里面。i...

2018-12-08 15:38:49 17714 14

原创 Tensorflow数据预处理之tf.data.TFRecordDataset---TFRecords详解\TFRecords图像预处理

目录1、概述2、预处理数据1、概述在Tensoflow中,预处理数据除了使用tf.data.Dataset以外,还可以使用TFRecords。和tf.data.Dataset相比,优缺点如下(个人实践总结):在训练时节省数据预处理的计算资源。 使用TFRecords时,是将原始数据处理之后,以一种特定的格式保存为TFRecords文件,训练是只是简单的将数据取出来训练,在训练时可以节省相当...

2018-12-05 11:32:36 13855 1

原创 Ceres的CMakeLists.txt写法 \ cannot find -lceres解决方案

目录1、安装Ceres1.1、使用apt-get安装:1.2、自行编译2、CMakeLists.txt写法1、安装Ceres1.1、使用apt-get安装:sudo apt-get install libceres-dev1.2、自行编译下载最新的源码:http://ceres-solver.org/ceres-solver-1.14.0.tar.gz安装依赖:sudo apt-g...

2018-11-28 17:11:41 5259

原创 Ubuntu安装Clang\Clang版本切换

目录1、废话2、安装不同版本的Clang2、Clang不同版本的切换1、废话clang这种可以直接用apt-get来安装的,居然还有人写了手动编译的教程。。。直接使用apt-get安装不是更好?虽然说使用apt-get可能不能安装不了最新版,但是,最新版的特性也用不上啊。。。2、安装不同版本的Clang2、Clang不同版本的切换...

2018-11-27 20:22:18 56069 12

原创 在Keras使用center-losss损失函数\Keras自定义损失函数

在Keras使用center-losss损失函数\Keras自定义损失函数

2018-11-19 10:21:20 8871 45

原创 Qt入门教程系列之五 事件与事件处理

目录1、事件系统2、事件传递3、事件类型4、事件处理5、事件过滤器6、发送事件1、事件系统在Qt中,事件是从抽象类QEvent派生的类的实例,它们表示在应用程序中发生的事情或者应用程序需要了解的外部活动的结果。 事件可以由QObject子类的任何实例接收和处理,但它们与小部件(Widget)相关。 本文描述了在典型应用程序中如何传递和处理事件。2、事件传递当事件发生时,Qt通过构造适当的Q...

2018-11-18 20:37:08 3724 5

原创 Keras多GPU训练以及载入权重无效的问题

目录1、数据并行1.1、单GPU或者无GPU训练的代码如下:1.2、数据并行的多GPU 训练2、设备并行本文讲简单的探讨Keras中使用多GPU训练的方法以及需要注意的地方。有两种方法可在多个 GPU 上运行单个模型:数据并行和设备并行(Keras官方建议使用 TensorFlow 后端)。第一部分讲如何使用数据并行的方式使用多GPU加速;第二部分给出一个设备并行的例子。1、数据并行1.1、...

2018-11-15 11:09:55 3357 8

原创 tf.data.Dataset图像预处理详解

目录1、tf.data.Dataset2、Dataset常用函数3、图像预处理的第一种方式3.1、导入依赖库3.2、定义常量3.3、读取文本中的图片标签对3.4、实例化Dataset并完成图像预处理3.5、从Dataset中获取数据4、注意事项1、tf.data.Dataset当训练集的样本特别大时, 比较适合tf.data.Dataset作为数据输入管线,相当方便。然而真正在使用tf.dat...

2018-11-13 22:02:12 12327 19

原创 Windows\Ubuntu修复UEFI引导

目录1、修复Windows引导2、修复Ubuntu的引导1、修复Windows引导修复Windows的EFI引导需要使用到的工具为大白菜装机工具,官网是http://www.winbaicai.com/。使用大白菜制作好装机工具以后,重启选择U盘启动(一定要选“UEFI:你的U盘名”那个启动项),进入大白菜的PE,然后在桌面就有一个引导修复工具,傻瓜式操作,我就不细说了。修复完之后就能正常启动...

2018-11-09 16:26:30 17563

原创 基于Keras mnist手写数字识别---Keras卷积神经网络入门

1、一些说明本博客是参考Tensorflow官方的使用Tensorflow实现的mnist手写数字识别例子,使用Tensorflow内置的keras实现的mnist,获得了和原有用tensorflow编写的代码相当的性能。本文也可以作为真正意义上使用Keras实现的卷积神经网络入门教程。参考连接如下:Tensorflow keras入门教程。Tensorflow mnist官方Demo。...

2018-11-08 11:04:31 2957 1

翻译 Tensorflow keras入门教程

目录1、Tensorflow与Keras2、安装内置Keras的Tensorflow3、Tensorflow内置的Keras教程3.1、导入tf.keras3.2、创建一个简单的模型3.2.1、顺序模型(Sequential model)3.2.2、设置keras层(layer)3.3、训练和评估3.3.1、配置训练3.3.2、使用NumPy数据作为训练数据3.4.3、输入 tf.data 数据集...

2018-11-04 21:08:31 11821 1

原创 Clion 无法识别*.cu文件的问题

一、在FileTypes的C++里面添加*.cuh和*.cu在菜单栏中找到“File”,依次点击“Settings”-->"Editor"-->"File Types"-->"C++" 点击黄色框内的的“+”,输入“*.cu”,点“OK”;然后再点击黄色框内的的“+”,输入“*.cuh”,点“OK”。这一步的目的是让CLion把*.cu和*.cuh文件识别为C++源文...

2018-09-13 18:14:30 3920

原创 OpenCV 光流算法加速---使用GPU来计算光流

一、依赖项OpenCV 2.4.13.x + CUDA 8.0 OpenCV 3.2.0及以上 + CUDA 8.0 OpenCV 3.4.x + CUDA 9.1OpenCV编译时,需要添加CUDA 支持。安装CUDA 以及OpenCV,可参考我的另外两篇博客Ubuntu 安装CUDA与OpenCV Ubuntu 编译OpenCV 二、代码计算稠密光流时,一般使用”cal...

2018-09-02 19:35:06 6519 3

原创 Ubuntu 安装CUDA以及cuDNN详细教程

如果要安装带CUDA的OpenCV,先按照本篇博客安装CUDA,然后参考我另一篇博客Ubuntu 编译OpenCV安装OpenCV。本文以Ubuntu 18.04+CUDA 9.0+cuDNN 7.4.2为例,说明安装过程。一、安装驱动添加驱动的源。打开终端,输入:sudo add-apt-repository ppa:graphics-drivers/ppasudo apt-g...

2018-09-02 19:11:59 4389 1

原创 Ubuntu 编译OpenCV详细教程

编译OpenCV差不多有50次了,我把我的经验写下来,给大家一个参考。安装CUDA可参考我另一篇博客:Ubuntu 安装CUDA。一、下载地址OpenCV:https://github.com/opencv/opencv/releasesOpenCV contrib: https://github.com/opencv/opencv_contrib/releasesOpenCV 3...

2018-09-02 17:23:24 14906 1

原创 C++ 使用lambda表达式作为函数参数

lambda表达式参考C++11 学习笔记 lambda表达式 C++中的Lambda表达式详解 Lambda expressions作为函数参数传递由于时间有限,我直接贴代码了模板参数#include <iostream>#include <string>template <typename F>void print(F cons...

2018-08-21 16:30:16 36193 3

原创 C++ 计时 C++最好用的计时器类

一、缘起做的一些项目需要计时,但是网上找到的计时博客比较老,或者互相copy,或者不跨平台。其实C++11中的chrono库,就是可以用来写计时器,跨平台,跨编译器,下面就是计时器的实现//timer.h#ifndef W_TIMER_H#define W_TIMER_H#include <iostream>#include <string>#incl...

2018-08-17 17:47:46 18411 1

原创 Qt入门教程系列之四 信号槽机制详解

一、简介在GUI编程中,当我们改变一个控件(比如Widget)时,通常把改变通知到UI中的另一个控件。更一般地,希望任何类型的对象能够彼此通信。 例如,如果用户单击“关闭”按钮,我们可能希望调用窗口的close()函数。信号槽机制是用来在两个对象(两个实例)之间通信。信号槽机制是Qt的核心特性之一,也是Qt和其他框架的差别。其他框架使用回调实现这种通信。 回调是指向函数的指针,因此如果您希...

2018-08-14 19:29:28 9724

原创 Qt入门教程系列之三 第一个Qt项目:记事本

一、成果演示这就是我们的记事本看完这篇博客可能还有许多不懂,不过别急,我后面还会更新博客来讲Qt。你可以先百度来解决自己的问题。 二、编写记事本所有新增的代码都应该自己敲一遍。不懂的,可以先略过。C++要是不懂,先补补C++。 创建项目Notpad notepad.pro - 项目文件main.cpp - 主文件notepad.cpp - Notepad主...

2018-08-13 16:47:13 11428 14

原创 Qt入门教程系列之二 Hello Qt

一、Qt CreatorQt Creator是一个IDE,类似于VS,理论上,也可以使用其他IDE来开发Qt程序。打开QtCreator之后,出现如下页面其中对“选项栏”中有三个按钮,分别为“Projects”、“示例”、“教程”;“Projects”对应着项目的管理,包含创建项目和打开项目。”示例“里面有非常的多的例子,可以研究研究。”教程“里面有一些简单的教程。二、创建自己的第...

2018-08-11 14:21:59 4341 1

原创 Qt入门教程系列之一 安装Qt

一、下载Qt官网给出的都是在线安装包,个人觉得还是离线安装包好用,给出两个离线安装包下载地址http://download.qt.io/official_releases/qt/http://download.qt.io/archive/qt/最新的Qt版本的是5.11.1,下载地址是http://download.qt.io/official_releases/qt/5.11...

2018-08-10 21:19:22 7117

原创 Qt libraries not found Ubuntu找不到Qt库的解决方案

1、先从官网下载Qt并安装下载地址:Index of /official_releases/qt2、使用configure配置的项目configure配置的项目一般依赖于pkg-config去找库的头文件目录和库目录。pkg-config在PKG_CONFIG_PATH所指定的路径中去寻找.pc文件,在这些文件里面找对应的库的配置。因此,要让使用configure配置的项目找到Qt库,...

2018-07-23 11:34:20 5921

原创 Ubuntu多显示器设置无法保存解决方案

近来新增了一块显示器,于是我也是拥有两块显示器的人了,其中一块显示器需要设置,我就使用nvidia-settings来设置,但是设置好之后重启,双显示器设置失效。经过一番折腾,终于找到了正确的设置方法。1、依次打开“系统设置(System Settings)” ---> "显示(Display)",进入如下界面拖动黄色长方形(写着“AOC Intl 23“”)或者粉色长方形(写着...

2018-07-22 16:19:23 6364

原创 Ubuntu Octave命令窗口乱码解决方案 Ubuntu安装最新版Octave

一、安装Octave 4.2.2Ubuntu16.04sudo apt-add-repository ppa:octave/stablesudo apt-get updatesudo apt-get install octave参考链接:Ubuntu 16.04 安装 带图形界面(GUI) Octave 4.2.1Ubuntu 18.04sudo apt-get ins...

2018-07-21 14:36:32 3670 1

原创 OpenCV+CUDA入门教程之七---OpenCV的GPU模块的库函数

目录一、矩阵运算二、元素操作三、图像处理四、GpuMat运算五、目标识别六、特征检测与描述七、图像滤波八、相机校正及3D重建九、光流十、OpenCV3新增 OpenCV的GPU模块中实现了很多基本图像函数和算法,只不过把参数从从Mat变成了GpuMat。本篇博客旨在提供一个目录供大家参考。在2.4中,GPU模块有单独的文档,在3.4中,GPU模块与其他文...

2018-07-18 21:02:01 5858

原创 OpenCV+CUDA入门教程之六---访问GpuMat的每一个元素

目录一、CUDA极简入门教程二、访问GpuMat的每个元素一、CUDA极简入门教程本部分只是CUDA 的一个超级简单且不完整的内容,关于CUDA配置和编程,请参考官方文档或其他教程。1、KernelKernel是在GPU上执行的函数,访问的数据都应该在显存中;函数没有返回值,需用void作为返回类型;语法和C++相同,也能使用C++的一些标准库函数(因为这些库函数有GPU实...

2018-07-18 21:01:38 10010 7

原创 OpenCV+CUDA入门教程之五---GpuMat详解

目录一、简介二、构造函数二、GpuMat::upload、GpuMat::download三、GpuMat与PtrStepSz、PtrStep四、深复制与浅复制五、其他成员函数一、简介GpuMat可以从其命名看出,它是“GPU”版本的Mat,绝大部分接口和Mat相同,功能也类似。和Mat相比,GpuMat多了两个成员函数upload和download,分别...

2018-07-18 21:01:14 34143 14

原创 OpenCV+CUDA入门教程之四---数据类、数据类相关函数和同步类

OpenCV+CUDA入门教程之四---数据类、数据类相关函数和同步类

2018-07-18 21:00:47 4867

原创 OpenCV+CUDA入门教程之三---初始化和设备信息

目录一、一些概念及说明二、设备信息函数一、一些概念及说明1、主机端(Host端)、设备端(Device端、GPU端)在CUDA中,有主机端和设备端这两个概念,主机端是指CPU+内存,设备端是指GPU+显存。主机端的代码在CPU上执行,访问主机内存;设备端代码在GPU上执行,访问显存。在使用GPU计算时,需要在主机内存好显存之间来回拷贝数据;当然,一些新技术可以不用拷贝数据,请参...

2018-07-18 21:00:14 5718

原创 OpenCV+CUDA入门教程之二---GPU模块简介

OpenCV+CUDA入门教程之二---GPU模块简介

2018-07-18 20:59:50 4757 2

原创 如何在代码中区分OpenCV版本 如何区分是OpenCV2还是OpenCV3

1、C++OpenCV在C++中的版本号在<opencv2/core/version.hpp>里面,贴出部分和版本相关的定义// opencv2#define CV_VERSION_EPOCH 2#define CV_VERSION_MAJOR 4#define CV_VERSION_MINOR 13#define CV_VERSION_REVISI...

2018-07-17 10:42:01 6464 1

原创 C++ 二维数组 在连续的空间中分配二维数组

C++ 二维数组 在连续的空间中分配二维数组

2018-07-03 19:47:39 4107

原创 C\C++如何在代码中区分Debug或者Release模式

在Release模式下会自动定义一个宏NDEBUG,Debug模式下没有,因此可以在在代码中判断宏NDEBUG是否存在来判断是Release模式还是Debug模式。示例代码如下#ifndef NDEBUG std::cout << "Hello, World! Debug Mode" << std::endl;#else std::cout &lt...

2018-07-03 18:44:33 5951 1

原创 undefined reference to `hb_font_destroy'

undefined reference to `hb_font_destroy'

2018-06-05 16:04:30 2605

解决Pytorch在Pycharm没有代码提示的文件__init__.pyi(4月21日更新版)

解决Pytorch在Pycharm中没有代码提示的问题。首先把Pycharm升级到2019.1.1,然后把Pytorch升级到1.0.1.post2,然后把下载的__init__.pyi替换掉site-packages/torch/中的__init__.pyi就行。

2019-04-21

解决Pytorch在Pycharm没有代码提示的文件__init__.pyi(2019.4.21)

解决Pytorch在Pycharm中没有代码提示的问题。首先把Pycharm升级到2019.1.1,然后把Pytorch升级到1.0.1.post2,然后把下载的__init__.pyi替换掉site-packages/torch/中的__init__.pyi就行。

2019-04-21

MNIST手写数字识别的Keras实现

本资源是属于博客“基于Keras mnist手写数字识别---Keras卷积神经网络入门教程”的项目文件,主要是讲了如何使用keras实现手写数字识别。

2018-11-08

BMP图像的读取保存

实现了BMP图像的读取、保存、创建、修改某一像素的代码。跨平台。

2018-05-15

Tenda U1 rtl8192eu 网卡驱动

这个资源是Tenda U1网卡,芯片型号为rtl8192eu这款网卡的驱动deb包,适合离线安装,Ubnutu16.04亲测可用。

2018-02-01

SimpleCropView插件使用示例

本代码包包含了如何是使用SimpleCropView插件的示例

2017-08-29

QT TCP通讯无法收到数据的解决方案

好多博客中,有一个很大的误区,就是发送完数据之后,立即调用Socket.disconnectfromHost(),造成数据无法正常的被对方接收到,因此,应当等待关于这个Socket的所有操作完成之后,才能调用Socket.disConnectFromHost()函数。

2017-07-30

QT TcpServer和TcpSokect的通讯示例

本项目是Qt下,使用Tcp协议通讯的例子,使用的类主要是QTcpSocket和QTcpServer。好多博客中,有一个很大的误区,就是发送完数据之后,立即调用Socket.disconnectfromHost(),造成数据无法正常的被对方接收到,因此,应当等待关于这个Socket的所有操作完成之后,才能调用Socket.disConnectFromHost()函数

2017-07-30

空空如也

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

TA关注的人

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