- 博客(111)
- 资源 (9)
- 收藏
- 关注
原创 关于EAST算法NMS操作
EAST算法使用的是局部nms,以前一直以为是普通nms,原理见https://blog.csdn.net/weixin_44474718/article/details/102325343?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159617811719195264544472%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=15
2020-07-31 14:55:01
537
原创 NMS实现方法
前言想要做nms的优化所以·了解一下nms代码。原理不说了太简单直接讲代码。纯python实现:nms_py.py#!/usr/bin/env python3# -*- coding: utf-8 -*-"""Created on Mon May 7 21:45:37 2018@author: lps"""import numpy as np boxes=np.array([[100,100,210,210,0.72], [250,250,420,420,0.8]
2020-07-31 14:16:55
840
原创 EAST算法微调特征提取部分和输出结果
前言最近还是在研究EAST算法,这里把遇到的一些细节记录一下,就是EAST代码中可以更改的而且比较有用的两种。首先是代码地址:https://github.com/argman/EAST一、输出结果我们这里可以看到,输出结果有两种一个是四边形,一个是旋转框。这两种在训练和输出的时候在代码中是可选择的,如果想修改的话在这里。特征提取网络替换可替换网络在nets文件夹下的resnet—v1中选择。最后先记录这些,其他的想起来在记录。...
2020-07-30 14:08:28
505
原创 学习笔记——轻量型神经网络
前言因为以后会用到,所以这块尝试看一下轻量型神经网络的代码,同样是写给小白的,不深究只教大家大致如何去看。而且MobileNetV3有两个版本,我们以small为例。代码文件结构其中MobileNetV3—small和large是网络结构搭建,MobileNetV3—factory是将两个结构整合到一起。layers是各个子模块的构建。其他是训练和测试文件。MobileNetV3—small结构MobileNetV3—small代码整体代码# Copyright 2019 Bisonai
2020-07-29 16:22:54
534
原创 文本检测算法损失函数汇总
前言最近在研究文本检测算法的优化,想改一下EAST算法的损失函数。所以收集一下各个算法的损失函数。CTPNAnchor Softmax loss:该Loss用于监督学习每个Anchor中是否包含文本。(分类,用Softmax损失)Anchor y coord regression loss:该Loss用于监督学习每个包含为本的Anchor的Bouding box regression y方向offset,类似于Smooth L1 loss。(位置回归,用Smooth L1损失)Anchor x c
2020-07-28 09:16:59
1487
原创 关于EAST算法中的1X1和3x3卷积核意义猜想
前言这段时间开题涉及EAST算法,结构如下:在这个算法里我们可以看见在特征图融合后有两部操作,先1x1卷积,然后3x3卷积,为什么不直接3x3呢。以前就是单纯的跑代码,没有注意,今天考虑一下它的意义,我觉得的他是在节省计算量。先通过1x1降低通道数,然后在3x3改变特征图大小。举个例子假设我们输入为3X3X64,想用3x3卷积,得到3x3x32的特征图。如果一步卷积我们需要一组3X3X64X32的卷积核计算量为:55336432=460800.如果我们先用1x1x64x32,再用3x3x32x32
2020-07-27 09:40:27
1398
1
原创 EAST算法优化思路—3x3卷积转换
前言本文章仅用于论文研究,请勿随意传播。在EAST算法中每次·感受野融合后会有一次·3X3的卷积,预计对它进行优化,以减少网络计算量,用3x3深度卷积+逐点卷积代替。现在让我们看一下这两种操作。深度卷积深度卷积(Depthwise convolution, DW)不同于常规卷积操作,深度卷积中一个卷积核只有一维,负责一个通道,一个通道只被一个卷积核卷积;常规卷积每个卷积核的维度与输入维度相同,每个通道单独做卷积运算后相加。以一张5x5x3(长和宽为5,RGB3通道)的彩色图片举例。每层深度卷积卷积
2020-07-25 15:49:37
238
原创 EAST算法优化思路—轻量级神经网络mobilenetv3
前言EAST算法优化思路 ,仅用于论文研究特征提取网络部分有两个思路:网络更深和轻量级1)网络更深:残差神经网络原文使用的卷积神经网络是VGG16,可以考虑使用更深层的网络增加特征的抽象度,让特征更加深,借鉴EAST本身结构首选残差神经网络,网络层数更深,但是跳层思想可以让网络的特征融合,鲁棒性更好且不会梯度消失:https://arxiv.org/pdf/1512.03385.pdf2)轻量级神经网络https://blog.csdn.net/weixin_47196664/article
2020-07-25 15:04:34
97
原创 EAST算法优化思路-网络部分混合金字塔
前言EAST算法优化思路,用于个人论文研究。(1)混合特征金字塔为了达到检测不同尺度文本特别是小文本小文本的目的,采用混合金字塔。一个自上而下,一个自下而上。然后融合
2020-07-25 15:02:03
63
原创 学习笔记——轻量型神经网络
前言前段时间沉迷于centos7,好长时间没写博客了。liunx真的安装使用有点复杂,就当学习了。这段时间回到Windows,最近在准备开题题目,准备做算法优化,关注了一下轻量型神经网络。了解了一下MobileNet系列。我们直接来学习最近版本MobileNetV3。配置其他配置不用谈,首先我用的代码地址是https://github.com/Bisonai/mobilenetv3-tensorflow关于代码其他不用多说唯独有一点,TensorFlow版本,官网要求版本TensorFlow 1.1
2020-07-23 16:31:28
993
原创 kitti数据集打包成voc格式
前言在大家训练自己的模型时经常想要使用自己的数据集去入手,而例如caffe这样的框架需要数据格式是voc格式,在网上找了很多要么是不好使,要么是把一些类别合并了,安装学习视频敲得代码也有一点错误,这里上穿本人亲自试过的代码,以供大家参考。提前准备工作首先大家要准备好文件夹如图:将图片放在JPEGImages下。trainning是标签解压后的结果:ImageSets下别忘了定义Main文件夹:所有文件夹记得区分大小写。我把主文件夹放在桌面上,文件名是kitti所以主文件夹路径是:E:\
2020-07-11 13:27:29
694
13
原创 AttributeError: module scipy.misc has no attribute imread
错误“AttributeError: module ‘scipy.misc’ has no attribute ‘imread’”解决:scipy==1.2.1
2020-06-22 12:43:28
378
原创 ValueError: Object arrays cannot be loaded when allow_pickle=False
错误:ValueError: Object arrays cannot be loaded when allow_pickle=False解决:numpy版本太高,应该降级为1.16.2
2020-06-22 12:31:36
197
原创 机器学习笔记——生成式对抗网络GAN
前言今天下午我们一起学习有趣的生成式对抗网络GAN。GAN介绍生成对抗网络(Generative Adversarial Networks,GAN)最早由 Ian Goodfellow 在 2014 年提出,是目前深度学习领域最具潜力的研究成果之一。它的核心思想是:同时训练两个相互协作、同时又相互竞争的深度神经网络(一个称为生成器 Generator,另一个称为判别器 Discriminator)来处理无监督学习的相关问题。通常,我们会用下面这个例子来说明 GAN 的原理:将警察视为判别器,制造假币
2020-06-17 16:36:14
850
原创 机器学习笔记——图像风格转换
前言今天我们一起学习图像风格转化。先说一下图像风格转换要做的事情,就是我们有如A的一张图,然后有如剩下图左下角的风格图,可以看到比如梵高著名的星空图,我们把A的风格依照这些图进行转化就得到了BCDEF等风格图。这就是图像风格转化,很简单,我们说一下原理。原理先说一下,做风格转化的原料,一个训练好的卷积神经网络我们这里用VGG16,一张原图,一张风格图,一张用来改变的图(中间的x,理论上什么图都可以,这利用了一张噪声图,其实用原图或者背景图也可以)。我们要做的是分为两部分,优化内容损失和风格损失,
2020-06-17 11:45:18
1129
1
原创 机器去学习笔记——使用TensorFlow训练自己的目标检测模型
前言我太难了,调程序搞了一下午,才好是一个,没办法小白就是悲催,目标检测是真的不好学,我正在努力,大家一起努力,向着毕业冲!冲!冲!不发牢骚了,进入正题。今天和大家一起学习的是利用TensorFlow的官方文件训练自己的目标检测模型。本人亲测请放心食用。ヾ(◍°∇°◍)ノ゙第一步:目标检测API第一小步是我们去下载官方的模型文件,网址我发过了:https://github.com/tensorflow/models这是我下载以后存放的位置以及用到的文件:C:\Users\dell-pc\model
2020-06-15 15:36:16
952
原创 机器学习笔记——模型网址
给大家TensorFlow·官方训练好模型目标分割,图像识别的网址。https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md
2020-06-14 11:21:57
161
原创 机器学习笔记——FCN(续)
FCN会在最后用反卷积(上池化)的方法将特征图恢复到原来大小,这样有两个好处,一、每个像素点代表原来的一个像素,可以实现予以分割对所有像素点分类的要求,二、经过多层卷积特征很深,但也有缺点就是上采样(反卷积)得到的特征图分辨率很低所以用跳层来解决。...
2020-06-13 14:50:26
151
原创 机器学习笔记——细粒化特征
原来以为yolo只是简单地把不同感受野的特征图链接在一起,其实这里又以一个细节,细粒度,如图是把特征图进行类似于在二维空间上进行拆分然后再三维空间上进行重组后在进行连接,并非是传统的池化操作。...
2020-06-13 04:46:39
751
原创 机器学习笔记——特征金字塔
从这里看出随着卷积层的深入,主要变化有两种,一是我们会获得更大的感受野,而是会获得一些更深·,更抽象的特征而浅层一般是边缘特征
2020-06-13 02:39:30
385
原创 机器学习笔记——FCN
上半部分为普通卷积神经网络下面为FCN如图所示FCN精髓在于无论你输入多大的图片,最终都尅已完成输出,但是输出也是多维矩阵,类似于最后输出了一个经滑动窗口过滤后的结果,结果中每个像素点代表一定感受也下的检测结果,如上图每个窗口大小是14*14,一定意义上实现了目标检测,但是由于窗口大小是固定的,所以不能真的代替目标检测。...
2020-06-11 14:00:45
230
原创 机器学习笔记——空洞卷积
写在前面的话最近在学习图像课,我会把可能用到的看到挺好的知识分享出来。总结:空洞卷积似乎是可以代替反卷积(上池化)来扩大特征图大小而且效果更佳,我觉得是一个处理小文本或者小物体的好方法。...
2020-06-11 11:18:01
224
原创 AndroidStudio学习总结
前言我把AndroidStudio学习的多个代码融合到一篇里,跑肯定不行,但是这样可以一次对比哪个部分可以写神魔,不同方法区别在哪。package com.example.myapplicationimport androidx.support.v7.app.Aimport android.os.Bundleimport android.view.Viewimport android.widget.TextViewpublic class MainActivity extends AppCo
2020-06-09 15:12:01
1224
原创 python让编程更简洁
变量交换a=1b=2tmp=aa=bb=tmppython简洁版a=1b=2a,b=b,a字符串格式name="rode"country="china"age=28print("hi,i'm"+name+"i'm from"+country+"and i'm "+str(age))python简洁版name="rode"country="china"age=28print("hi,i'm{}i'm from{}and i'm {}".format(name,co
2020-06-03 09:38:19
155
原创 多线程学习笔记(4)lock
前言这是我们的最后一课,写完就去吃饭。lock如果我们用多次线程去执行两个运算线程,但是若果我们不用锁的话,他们就会穿插着运行像这样:import threadingimport timefrom queue import Queuedef job1(): global A for i in range(10): A+=1 print('job1,A',A)def job2(): global A for i in
2020-05-29 17:20:05
123
原创 多线程学习笔记(3)Queue
前言多线程第三课,我们一起冲冲冲。Queue众所周知多线程是不能有return的,但是我们运行进程没有结果那运行它干什么。于是有了Queue,他可以储存结果然后输出。这里我们同时运行4个进程。import threadingimport timefrom queue import Queuedef job(l,q): for i in range(len(l)): l[i]=l[i]**2 q.put(l)def multithreading():
2020-05-29 16:47:50
212
原创 多线程学习笔记(2)join
前言这是我们一起学习多线程的第二课joinjoin我们平常的多线程是一起运行的,这样就会导致一个问题,就是输出结果,一个没输出为完另外一个就输出了,这样结果就混在了一起,像这样:import threadingimport timefrom queue import Queuedef thread_job(): print('线程开始\n') for i in range(10): time.sleep(0.1) print('线程结束\n')def
2020-05-29 16:43:07
157
原创 多线程学习笔记(1)
前言很久之前在EAST算法里面见到了多线程,一直没太注意,现在想利用零碎时间学习一下,现在进入我们的第一课。初识多线程就是并行处理多个任务,这里让我们看几个用到的函数:import threadingimport timefrom queue import Queuedef thread_job(): print('这是一个添加线程,名字是%s'%threading.current_thread())def main(): added_thread=threading.Th
2020-05-29 16:36:19
128
原创 MASK RCNN代码解析(转载)
转载抱歉本来真的很想写MASK RCNN的代码解析,但是实在抱歉,我下载不了他的代码,github太卡可,这里给大家推荐大神的代码解析。https://blog.csdn.net/sxlsxl119/article/details/103433078在这里给各位道个歉。...
2020-05-29 13:43:39
260
原创 Mask RCNN算法简单解析
前言今天开始学习Mask RCNN,大概是Faster RCNN的升级版。这里我们还是老规矩,用最简单的语言去讲原理,不求面面俱到,但求清晰明了。算法初识1》算法能干什么?答:算法可以用来做“目标检测”、“目标实例分割”、“目标关键点检测”。2》算法有什么优点?答:Mask R-CNN是一个非常灵活的框架,可以增加不同的分支完成不同的任务,可以完成目标分类、目标检测、语义分割、实例分割、人体姿势识别等多种任务,高速、高准确率、简单直观。这理解是一个概念:实例分割。通常意义上的目标分割指的
2020-05-26 14:20:22
713
原创 SSD源码解析(2)
前言上午写了anchor构造部分,上了一节课,下午继续肝,现在就是SSD的网络构造部分了,如果想知道SSD的模型结构可以看我写的原理里面有结构图,这里就不复制过来了。额算了还是整过来吧:ssd_model_fn()def ssd_model_fn(features, labels, mode, params): """model_fn for SSD to be used with our Estimator.""" shape = labels['shape'] loc_t
2020-05-17 14:48:43
383
原创 SSD源码解析(1)
前言最近其实学的都不多,最近有点迷茫,我写这些东西的初衷是记录自己的学习历程,最近觉得有点累,而且开学就研二了,研究命题还没有确定,虽然大方向差不多但是还是有点迷茫,再加上520朋友圈虐狗着实有点累,不过生活还得继续,成长注定是条孤独中坚强的路,大家互勉,吐口老血继续,加油。input_pipeline()def input_pipeline(dataset_pattern='train-*', is_training=True, batch_size=FLAGS.batch_size): d
2020-05-17 09:46:19
324
3
原创 SSD算法简单解析
前言今天学习SSD目标检测算法,SSD,全称Single Shot MultiBox Detector,是2016年提出的算法,今天我们还是老规矩,最简单的做算法解析,力求让像我一样的小白也可以看得懂。算法初识1》算法能干什么?答:可以检测图片中的目标,并且画框并予以分类,21类(其实是20类,为什么后面会说)。2》算法有什么优点?答:SSD是one—stage算法,比Faster RCNN比YOLO准确。但是缺点也很明显,首先很多参数需要手工设置,调试需要依赖经验,其次对小目标不敏感,特
2020-05-15 13:25:29
1629
原创 yolo v3算法简单解析
前言来了老弟,今天我们来整yolo v3,《YOLO v3:YOLOv3: An Incremental Improvement》,老规矩我们不管其他前辈咋样,我们力求简单,干练,用最简单的内容讲出几乎所有的主要框架。这里参考了一个前辈的博文,https://blog.csdn.net/leviopku/article/details/82660381图片也来源于这,以为前辈点赞。算法初识1》算法能干什么?答:可以高效检测图片中物体所在位置以及物品类别。2》算法有什么优点?答:这就涉及yo
2020-05-13 14:58:11
1880
原创 Faster RCNN算法简单解析
前言今天我们一起学习Faster RCNN,《Faster R-CNN: Towards Real-Time ObjectDetection with Region Proposal Networks》这篇博客我们依然奉行老规矩,不求面面俱到,但求精简。希望可以帮到像我这样的小白。先看一下整体网络结构:算法初识1》算法能干什么?答:可以高效的检测图片中的物品所在区域并且给出图片中物品的类别。2》算法有什么优点?答:其实我不知道,因为他是目标检测算法,无非做的就是检测目标,但是他又不是一阶
2020-05-12 14:17:58
427
原创 CTPN算法简单解析
前言今天讲的是CTPN,Detecting Text in Natural Image with Connectionist Text Proposal Network同样无论别人怎么写,我们讲原理力求简单,用最low的话,讲最复杂的原理(吹个牛,别介意),可能讲的并不是那么好但是一定更倾向于我们这儿样的小白。话不多说,开整。算法初识1》算法能干什么?答:识别文本啊,你看他那个名字,就是场景文本检测呗。2》算法有什么优缺点?答:优点:加入了双向LSTM,文本检测效果好,由于使用文本线构造算
2020-05-12 11:03:04
2373
EAST算法的改进算法,帮助大家顺利毕业
2022-10-23
SVID_20200619_150314_1.mp4
2020-06-22
20200619_150315.m4a
2020-06-22
1920600034-葛立鹏-工程源码.zip
2020-06-22
1920600034-葛立鹏-设计报告.doc
2020-06-22
生成式对抗网络GAN.ipynb
2020-06-17
图像风格转移.ipynb的代码,好久之前的了
2020-06-17
object-detection-tutorial.ipynb
2020-06-15
扩频通信系统原理.doc供大家入门学习
2020-05-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅