自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (1)
  • 收藏
  • 关注

原创 LSTM 与 CTC loss (以及DP、HMM)

最近在OCR识别,用到了CTC loss。只能说爱你不容易啊。1、CTC解决什么问题? [1] Sequence to sequence learning [2] Unsegmented real-valued input stream (一般用于语音与光符字体识别) 因为如果在ocr或者语音方面,寻求分割的方式解决识别问题,那是难上加难。 例如:分割难...

2018-02-27 16:01:18 11144 23

原创 python 的 matplotlib

本文会一直更新matplot的画图技巧,使用方法matplotlib教程matplotlib API1、实例一 本实例展示了matplotlib画图的基本流程import matplotlib.pyplot as plt# step 1 prepare datax = [1,2,3,4]y = [10,20,25,30]# step 2 create plotfig = plt.

2017-12-04 09:39:42 386

原创 pytorch 中 glu计算

1. glu 计算原理demodropout原理训练过程中,输入张量的一些元素按从伯努利分布中采样的概率p随机置零。在每个前向调用过程中每个通道都能被独立置零。Dropout方法证明被证明是正则化和防止神经元的互适应(co-adaptation)效应的有效技术。形状:输入: 输入可以是任意形状输出: 输出和输入同形状demo...

2020-12-03 20:07:30 1825

原创 手写OCR提升指标利器-Word Beam Search

手写英文OCR比较难识别主要是因为并不是单词中的每个字符都人眼可以看清。或者有些字符是容易混淆的,我们单纯从字符上来看是无法分辨0-O-o-a、 I-1-L 等,甚至是有拼写错误。本文针对上述问题,分析常用的decode方案。进行简要的对比。1. CNN识别易混淆CNN神经网络在识别oi 与a 是一个不稳定的状态。也就是根据你训练数据的倾向性,做出感知层面的识别。看到什么就输出什么,不假思索,没有推理认知过程。这也是CNN的缺点,实际上RNN(LSTM)有一定的认知能力,对上下文进行推断,不.

2020-07-24 10:17:44 686 2

原创 Pytorch奇技淫巧

如何打印pytorch模型的参数名与权重import torchimport torch.nn as nnnet = nn.Linear(5,5)for name,parameters in net.named_parameters(): print(name,':',parameters.size()) print(getattr(net,name))#################### print ######################weight : tor

2020-05-12 10:12:59 385

原创 Transformer与OCR

由于OCR是序列到序列,NMT或者通用的任务Transformer也是Sequence 2 Sequence。而OCR识别经典论文是CRNN,其中是CNN+RNN+softmax,这个RNN可以试试LSTM,GRU,或者其他变种。也可以是机器翻译的端到端的序列识别。本文试图分析Transformer与OCR任务,试图将Transformer替换CRNN中的LSTMLSTM与TransformerTransformer实际上是google的论文『attention is all you need』.

2020-05-10 20:11:37 1521

原创 OCR 检测与分割数据集、统计脚本总结供下载

本文整理OCR 论文中,文本定位与分割算法的常用对比测试集,以及详细说明,统计脚本;各个数据集的特点等。

2020-04-22 18:03:31 360

原创 OCR end2end数据集、统计脚本总结供下载

本文整理OCR 论文中,end2end算法的常用对比测试集,以及详细说明,统计脚本;各个数据集的特点等。

2020-04-22 18:01:15 366

原创 OCR 识别数据集、统计脚本总结供下载

IIIT5KScene Text Recognition using Higher Order Language Priors简介,5K涨裁剪好的文字图片,如上图。2K张训练集,3K张测试集。测试集中包含了街景,网络图片等。仅标注62个字符,52个字母以及10个数字。我这边整理了一份可用的,供下载,GT为txt格式 密码:u461。...

2020-04-22 17:38:47 2807 7

原创 TensorRT 安装与使用及Pytorch的TensorRT部署

Tensorrt安装

2020-03-23 19:23:15 11994 4

原创 Pytorch RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton

Pytorch 的坑以及记录最近在训练pytorch用到DataLoader自己复写了一个dataset,有个奇怪的问题,训练时候报这个(Pytorch RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton)错误解决办法把 img = Image.open(...

2019-11-17 17:27:34 41479 14

原创 mmdetection 源码分析

本文主要针对比较火热的 mmdetection 的源代码进行解读说明,记录一下里面细节以及设计上的方案的优势。下文是本人的理解。持续更新。。。首先引入里面用的Python的基础,以及基础库mmcv,最后在说明mmdetectionpython 基础类与对象mmcvmmdtetection...

2019-08-29 11:12:48 731

原创 Page dewarping (OCR之图像去扭曲)

在OCR中,存在着两个预处理难题【1】图像角度预判 【2】图像去除扭曲,去除扭曲主要包含两个方面:透视,畸变由于paper对这方面的论述几乎找不到,尤其是ICCV,NIP,CVPR、ECCV等鲜有新论文本文主要记录一下各种传统算法以及深度学习算法在图像扭曲上的尝试,持续更新...

2019-08-09 10:14:42 3836

原创 C/C++/nvcc 预处理、编译、汇编、链接、动态链接库、静态链接库

1、C/C++预处理nvcc -c -arch sm_60 -std=c++11 roi_align_kernel.cu -I /Dev/ptorch_dev/libtorch/include/ -I /Dev/libtorch/include/g++ -c roi_align_cuda.cpp -std=c++11 -I /Dev/libtorch/include/ -I /Dev/...

2019-07-09 16:34:24 2503

原创 图算法系列二 网络诈骗检测

为了方便,本文的算法展示采用networkx, 接下来的文章主要以networkx为基础,说明图算法的应用Page Rank is a well-known algorithm developed by Larry Page and Sergey Brin in 1996....

2019-04-17 17:51:01 1255

原创 图算法系列一 boost graph Algorithm基本使用

本文详细介绍图算法以及boost graph algorithm的应用

2019-04-12 10:18:33 1260

原创 强大的imageMagick实战

用了差不多一年的imageMagick,它提升了我的工作效率,本文主要总结一下这里的奇技淫巧一、图像基本操作1.1、图像resizeconvert -resize 50% input.jpg output.jpg # 缩放到原来的一半convert -resize 100X100 input.jpg output.jpg # 缩放到100*100# - - - 批处理 - - - ...

2018-12-04 20:25:41 1961 2

原创 Image Caption

1 image caption 的阶段性飞跃。YearPaperAbstract2015Show, Attend and Tell: Neural Image Caption Generation with Visual AttentionInspired by recent work in machine translation and object detectio...

2018-11-30 16:10:22 378 1

原创 Pytorch0.2.0 源码安装与使用

由于最新项目需要,pytorch必须是0.2.0 版本。中间遇到了很多坑,记录如下。Pytorch0.2.0 源码安装首先下载pytorch0.2.0的源码解压. 在linux上可以运行 python setup.py install在mac 上执行MACOSX_DEPLOYMENT_TARGET=10.9 CC=clang CXX=clang++ python setu...

2018-08-02 17:08:00 7478 9

原创 大型项目CMakeLIsts.txt的编写规范

1、Very simple executablePROJECT( helloworld ) # 非必需SET( hello_SRCS hello.cpp )ADD_EXECUTABLE( hello ${hello_SRCS} )说明: ADD_EXECUTABLE creates an executable from the listed sources Tip: a

2018-07-05 19:21:00 5865

原创 OCR 预处理与检测

前言: 通用OCR领域的最难的是预处理与检测,目标检测领域我们常看到的是横平竖直, 也就是说:检测到的边框平行或垂直于图像边界。但是,在OCR中,文字的方向可以是各种方向;而且长宽比不确定,各种场景,各种尺寸、各种语言、各种艺术字体。而且,目前多角度检测fatal 弱点:文本行比较长,检测框容易断裂; 阵列字极容易找错方向。 当然手写OCR也很难,本文主要对 preprocess 与...

2018-03-22 20:45:17 6758

原创 Deep Learning with Python

1、学习地址Deep Learning with Python(wang@123)2、大神的twitter大神的twitter

2018-01-04 11:07:58 3892 1

原创 Google 的Protobuf 技术详解

1、例子 官方例子,建立一个 test.proto 内容如下:syntax = "proto2";package tutorial;message Person { required string name = 1; required int32 id = 2; optional string email = 3; enum PhoneType { MOBILE = 0;

2017-12-20 14:45:06 559

原创 机器学习任务的state-of-art之github及个人总结

前言深度神经网络其实更加适合做感知,而贝叶斯理论的核心是推理,只有从感知到推理才能到决策。所以最终来讲,你希望达到一种理性的推理、理性的决策,这里面正好是贝叶斯网络一个大行其道的地方—余凯1. State-of-the-art result for all Machine Learning Problems https://github.com/RedditSota/state...

2017-11-21 14:32:47 2861

原创 C++中的函数指针与宏函数总结

今天看项目代码才发现,函数指针分两种:普通函数指针,类成员函数指针。 那这两中函数指针的定义方法是不一样的。1、普通函数指针typedef void (*Dfun) (float, int);//(*Dfun) 实际上是(::*Dfun) 也就是全局的意思// Dfun 指向 接受两个输入参数:float,int 的返回值为void类型的函数2、类成员函数指针 由于类的所有成员(

2017-11-13 16:52:17 1883

原创 OpenCV常用Mat、Point、Rectangle等数据结构总结

本文主要总结Opencv的常用数据结构总结的初衷是:我发现OpenCV居然没有对Mat元素求和的操作。!!因此好好总结1、MatCV_8UC1 // 8位无符号单通道 ucharCV_8UC3 // 8位无符号3通道 ucharCV_32FC1 // 32位浮点型单通道 floatCV_32FC3 // 32位浮点型3通道 float...

2017-10-25 15:16:51 3136

原创 数字图像处理与OpenCV总结篇:一

做了3年多的图像处理,从本科毕设就做,到硕士毕业都没离开这个行业。本文旨在总结一下OpenCV与传统图像处理。1、疑问? 自动16年初接触深度学习开始,读了一些图像paper。涉及图像识别(ResNet、googleNet系列)、目标检测(RCNN系列、YoLo)、人脸识别、OCR。 开始一接触深度学习一段时间就有一个疑问:既然深度学习这么有用,也刷新了很多领域的benchmark。

2017-10-25 09:50:47 2899

原创 使用OpenCV中应当注意的几个问题

本文主要总结在工程项目中使用OpenCV库时候遇到的问题,并进行总结。1、警惕浅拷贝 浅拷贝对于图像来说不是好事吗?减少了内存的开销。代码没那么笨重。但是分情况!!Mat img_a = imread("test.jpg");Mat img_b = img_a; //这是浅拷贝/* 也就是说改变了 img_b 会同时影响到 img_a; */...

2017-10-24 16:26:07 1771 1

原创 OCR 总结

最近3个月一直不做人脸相关任务了,现在做OCR 还是老规矩,先放上OCR的最前沿的论文。1、state-of-art进展https://github.com/hs105/Deep-Learning-for-OCRhttps://github.com/chongyangtao/Awesome-Scene-Text-Recognitionhttp://mclab.eic.h

2017-10-19 17:13:06 2903

原创 C++中动态内存管理

本文总结C++ 中的内存管理,总结如下【1】尽量用share_ptr管理资源(Efective C++条款13:以对象管理资源)shared_ptr (C++ Primer)自动销毁所管理的对象: 有层含义: 1、一个shared_ptr的实例引用计数为0时,shared_ptr类自动销毁此对象。 { ...

2017-10-11 21:56:18 374

原创 ASM Algorithm (Active Shape Model) and its opencv implement

1、ASM解决什么问题? 一般而言,ASM做柔性刚体的目标检测任务。 首先,【柔性刚体】,可以认为是【人脸】以及现实生活中的刚体【一个茶杯】在图像中的表现【由于照相机的远近,以及被子的角度、旋转等】。 这类目标检测都:仅仅检测图像中感兴趣的某种物体(可以是多个),它不会检测多类别不同的目标。 它们确实在变化,但是变化一定在一定的范围之内。 (例如人脸中眼睛不可以变化到嘴巴

2017-09-22 09:18:13 903

原创 OpenCV中RotatedRect 以及 Rect介绍

最近项目中用到RotatedRect 这里记录一下//构建一个Mat(200*200)Mat image(200, 200, CV_8UC3, Scalar(0)); //设置一个旋转矩形3个参数分别为:质心(矩形中心),矩形长宽100、50 旋转角度:30 (clockwise)//RotatedRect 函数返回一个旋转矩形对象RotatedRect rRect = RotatedR

2017-09-11 15:01:07 19905

原创 Segment Fault & Abort trap

本文主要记录一些自己调试程序过程中遇到的问题,都是编译通过,运行崩溃的例子1、Segment Fault 在调试程序时候,有时候出现了Segment Fault 11这时候主要是由于可能程序需要接受 argv[1] 或者argv[2] 但是用户并未提供argv,提供即可2、Abort trap Abort trap 6 错误往往由运行路径不对导致错误而引发假设我的 可执行文件在 {PR

2017-09-09 10:55:29 891

原创 CLion最好用的编译器&Xcode

1、CLion的知识 1、CLion的好处是如果你在mac或者Linux下已经通过命令行编译通过了,那么就可以直接进行图像化界面 调试。且调试过程简单。 2、CLion收费 3、Windows、Linux、Mac下都支持CLion。(跨平台太好了)2、CLion下载即可用 1、选择已经建立好的文件打开Project即可(Project应该是个目录) clion co

2017-09-05 20:58:44 20414 1

原创 c++ 中string 与boost 中正则 regex

本文总结一些常用的,好用的c++string中的方法。大部分是正统写法,也有一些奇技淫巧。1、substr#include <iostream>#include <string>int main (){ std::string str="We think in generalities, but we live in details.";...

2017-08-30 15:34:51 347

原创 Mac下操作日常<for Programmer>

1、常用快捷键 原来在Linux环境下,显示当前文件夹下的图片用的display 指令,但是mac下需要用open 例如 : open 当前文件夹 【open . 】 显示当前图片【open image.jpg】 在命令行关掉当前窗口 【cmd q】2、安装软件 1 - 原来在Linux下都是 yum install 或者apt-get insta

2017-08-30 10:58:11 432

原创 python 中的trick(二)

0、Conda管理python答:condaPIL是一个很不好装成功的库,因此选用conda管理python包。conda list 发现本来就有PIL真是好啊 conda装cv2conda install -c https://conda.anaconda.org/menpo opencv #这个1、类型互转 元组 转换为 strtup.

2017-08-28 11:27:24 475

原创 pooling层是如何反向传播的?

1 . pooling层不需要反向传播?too Yang ! 前几天跟同学聊天,在提到pooling层的时候,提到怎么反向传播? 我当时认为【pooling没有可优化的参数,应该只进行正向传播,反向传播应该是个空的函数,仅仅实现Forward即可】 我原来添加或修改一般都是loss层。一般不涉及中间层的修改、添加。 今天Caffe实现双向LSTM时候,需要添加中间层来修改原

2017-08-09 10:41:20 10544 6

原创 Torch 使用总结

1、安装torch72使用torchth> x=torch.Tensor(3,1,8) [0.0000s]th> x(1,.,.) = 0 0 0 0 0 0 0 0(2,.,.) = 0 0 0 0 0 0 0 0(3,

2017-08-02 17:27:27 935

原创 Caffe 中 的工具以及trick

1、测试网络的时间性能,前向传播、反向传播时间#使用CPU${Caffe_root}/build/caffe time -model path/to/deploy.prototxt#使用GPU${Caffe_root}/build/caffe time -model path/to/deploy.prototxt -iterations 100 -gpu 0

2017-07-27 17:26:10 450

并行编程cuda

Scalable Parallel PROGRAMMING with CUDA

2018-01-04

空空如也

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

TA关注的人

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