自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (37)
  • 收藏
  • 关注

原创 python训练mask rcnn模型&&C++调用训练好的模型--基于opencv4.0(干货满满)

介绍我的第一篇关于mask rcnn训练自己数据的博文,基于python代码,虽然可以跑,但是不能真正用到工程领域中,工程领域更多的是基于C++和C,如果编译tensorflow C++ API也是可以,然后利用api调用模型,但是会比较麻烦,自己也尝试过,不是那么友好。opencv4.0,终于等到你~~~,opencv4.0已经支持mask rcnn的调用,只需要.pb文件和.pbtxt文件...

2018-12-29 18:50:54 11098 86

原创 opencv3.4.2调用训练好的Openpose模型

介绍opencv除了支持常用的物体检测模型和分类模型之外,还支持openpose模型,同样是线下训练和线上调用。这里不做特别多的介绍,先把源代码和数据放出来~实验数据模型文件:pose_iter_440000.caffemodel.protxt文件:https://github.com/opencv/opencv_extra,下载后,找到dnn文件夹,在内部有很多.protxt文件,都是o...

2018-12-29 15:36:37 9960 12

转载 mask rcnn数据转换为tfrecord数据

源代码其中:images_dir是图像文件夹,annotations_json_dir是json文件的文件夹,label_map_path是.pbtxt文件。其中.pbtxt格式如下所示:item { id: 1 name: 'tank'}item { id: 2 name: 'white'}转换源代码如下所示:#!/usr/bin/env python3# -*...

2018-12-28 19:36:28 1619 14

原创 python训练Faster RCNN&&C++调用训练好的模型进行物体检测-基于opencv3.4.3(超详细)

介绍上一篇博文讲到tensorflow Object Detection api 基于SSD模型对数据进行训练,然后通过C++版本的opencv进行调用,但是通过实验发现,SSD虽然快但是准确率实在太低了,所以又重新使用Faster RCNN进行重新训练~废话不多说了,开始主要内容介绍了!训练阶段配置:GTX1060、I7-8700k~关于object detection api的配置使用...

2018-12-28 17:48:31 9776 23

原创 tensorflow线下训练SSD深度学习物体检测模型,C++线上调用模型进行识别定位(干货满满)

一、介绍近两年来出现了许多优秀的分类、物体检测和分割模型,包括SSD,yolo,Mask RCNN,这些模型速度快,准确率高,被广泛应用于无人驾驶、人脸定位识别、工业缺陷检测中。工业领域,系统一般基于C/C++,而这些模型基本都都是基于python的,那么如何把python训练的模型集成到C++中呢?Opencv搭了一个很好的桥梁。opencv4.0可以支持调用Mask RCNN、Faster ...

2018-12-27 20:56:54 5092 1

原创 C++调用mask rcnn进行实时检测--opencv4.0

介绍Opencv在前面的几个版本中已经支持caffe、tensorflow、pytorch训练的几种模型,包括分类和物体检测模型(SSD、Yolo),针对tensorflow,opencv与tensorflow object detection api对接,可以通过该api训练模型,然后通过opencv调用,这样就可以把python下的环境移植到C++中。关于tensorflow object...

2018-12-27 09:35:43 12323 38

原创 C++调用tensorflow训练好的SSD物体检测模型-opencv3.4.3

本博文参考:https://blog.csdn.net/guyuealian/article/details/80570120介绍opencv真的是一个很强大的库,当深度学习开始逐渐成熟后,opencv也迅速把相对应的模块加入到其开源库中,现在opencv已经可以支持tensorflow、caffe和torch三种框架训练出来的模型。本篇博文主要介绍opencv调用训练好的tensorflow...

2018-12-26 15:23:04 12104 25

原创 C++调用SSD caffe模型进行物体检测-Opencv3.4.3

源代码#include <opencv2/opencv.hpp>#include <opencv2/dnn.hpp>#include <iostream>using namespace cv;using namespace cv::dnn;using na

2018-12-26 11:19:46 2763

转载 C++调用SSD tensorflow模型进行物体检测-Opencv3.4.3

#coding:utf-8# Object Detection using SSD Inception arquitecture trained on COCO datasetimport cv2import sysFROZEN_GRAPH = "datas/models/tensorflow/ssd_inception_v2_coco.pb"PB_TXT = "datas/model...

2018-12-26 10:33:24 1495

原创 C++调用caffe分类模型-Opencv3.4.3

前言opencv是图像领域中非常优秀的一个开源库,近年来,随着深度学习的发展,深度在图像识别、物体检测、语义分割等领域已经达到落地的程度。opencv开源库也一直在支持各种分类、检测model的调用,虽然还不够全面。。。opencv从3.3开始已经支持分类模型的调用,包括caffe、tensorflow、pytorch等框架训练出的模型。从3.4.2开始,支持yolov3的调用,这真的是一个很大...

2018-12-26 09:41:50 3293 1

原创 删除链表的倒数第N个节点

题目介绍给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。题目分析这道题目很简单,只要先计算出ListNode的长度length,然后做个循环到倒数第n个数那里,把...

2018-12-25 21:24:01 224

原创 相交链表

题目编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8 (注...

2018-12-25 20:48:47 132

原创 环形链表 II

题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。说明:不允许修改给定的链表。示例 1:输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1...

2018-12-25 20:00:27 90

转载 PCL中把点云拟合成曲面(附源代码)

源代码#include <pcl/point_types.h>#include <pcl/io/pcd_io.h>#include <pcl/kdtree/kdtree_flann.h>#include <pcl/features/normal_3d.h>#include <pcl/surface/gp3.h>#include...

2018-12-21 12:22:25 9157 6

原创 PCL中的点云分割算法

介绍点云分割算法是点云处理中非常重要的一部分内容,扫描出来的点云往往是整幅场景,没有办法对其直接处理,这个时候就需要一些点云分割算法。PCL是一个强大的库,已经帮我们封装好了许多分割算法,像平面模型、圆柱模型、立方体等一些规则模型的分割,和基于聚类方法的非规则模型的分割。下面来具体介绍下PCL中主要的点云分割算法。1、规则物体的模型分割这种分割算法主要针对规则物体,比如球、圆柱、平面、立...

2018-12-20 10:22:25 5500

原创 PCL计算点云的法线

源代码#include <pcl/io/io.h>#include <pcl/io/pcd_io.h>#include <pcl/features/integral_image_normal.h> //法线估计类头文件#include <pcl/visualization/cloud_viewer.h>#include <pcl/p...

2018-12-19 20:02:25 3497 6

原创 PCL点云参数估计算法之RANSAC和LMEDS

RANSAC算法RANSAC算法的输入是一组观测数据(往往含有较大的噪声或无效点),一个用于解释观测数据的参数化模型以及一些可信的参数。RANSAC通过反复选择数据中的一组随机子集来达成目标。被选取的子集被假设为局内点,并用下述方法进行验证:有一个模型适应于假设的局内点,即所有的未知参数都能从假设的局内点计算得出。用1中得到的模型去测试所有的其它数据,如果某个点适用于估计的模型,认为它也是...

2018-12-19 19:24:29 2200

转载 PCL中的关键点

NARF关键点是为了从深度图像中识别物体而提出的,关键点探测的重要一步是减少特征提取时的搜索空间,把重点放在重要的结构上,对NARF关键点提取过程有以下要求:提取的过程必须考虑边缘以及物体表面变化信息在内;关键点的位置必须稳定的可以被重复探测,即使换了不同的视角;关键点所在的位置必须有稳定的支持区域,可以计算描述子和进行唯一的估计法向量;为了满足上述要求,提出以下探测步骤来进行关键点提...

2018-12-19 18:02:23 586

原创 PCL对点云进行滤波处理并进行颜色可视化

介绍和图像滤波相似,点云的滤波处理非常重要。在获取点云数据时 ,由于设备和操作者经验环境因素带来的影响,被测物体表面性质变化和数据拼接配准操作过程的影响,点云数据中讲不可避免的出现一些噪声。在点云处理流程中滤波处理作为预处理的第一步,对后续的影响比较大,只有在滤波预处理中将噪声点 ,离群点,孔洞,数据压缩等按照后续处理定制,才能够更好的进行配准,特征提取,曲面重建,可视化等后续应用处理。源代码...

2018-12-19 17:03:56 3326 2

原创 PCL中的点云ICP配准(附源代码和数据)

介绍给定两个来自不同坐标系的三维数据点集,找到两个点集空间的变换关系,使得两个点集能统一到同一坐标系统中,即配准过程。配准的目标是在全局坐标框架中找到单独获取的视图的相对位置和方向,使得它们之间的相交区域完全重叠。对于从不同视图(views)获取的每一组点云数据,需要一个能够将它们对齐在一起的单一点云模型,从而可以应用后续处理步骤,如分割和对象重构。这篇博文就基于PCL中的ICP算法,实现不同视...

2018-12-18 21:46:43 17936 26

转载 pcl学习之kd-tree

介绍通过雷达、激光扫描、立体摄像机等三维测量设备获取的点云数据,具有数据量大、分布不均匀等特点。作为三维领域中一个重要的数据来源,点云数据主要是表征目标表面的海量点的集合,并不具备传统实体网格数据的几何拓扑信息。所以点云数据处理中最为核心的问题就是建立离散点间的拓扑关系,实现基于邻域关系的快速查找。概念KD-Tree 是一棵二叉搜索树。与普通的二叉搜索树一样,它具有左儿子比父亲小,右儿子比父...

2018-12-18 11:19:36 357

转载 Ubuntu18.04 + anaconda3 +python3.6+ 安装labelImg 标注

首先需要下载labelimg,链接https://github.com/tzutalin/labelImg然后:1、conda install pyqt=52、进入labelImg文件夹pyrcc5 -o resources.py resources.qrc3、python labelImg.py这样即可打开labelImg...

2018-12-14 21:43:21 1132

转载 C++调用yolov3模型-opencv3.4.2

源代码:#include <fstream>#include <sstream>#include <iostream>#include <opencv2/dnn.hpp>#include <opencv2/imgproc.hpp>#include &l

2018-12-13 21:56:35 8197 11

原创 Opencv3.4.2调用yolov2进行物体检测源代码

源代码#include<opencv2/opencv.hpp>#include<opencv2/dnn.hpp>#include <iostream>#include<string>using namespace std;using namespace cv;using namespace dnn;int main(){ ...

2018-12-13 21:05:15 1176

原创 Ubuntu18.04下C++编译tensorflow并在QT中使用

本博文参考:https://blog.csdn.net/qq_25109263/article/details/81285952https://blog.csdn.net/dragonchow123/article/details/80682787介绍最近要把模型落地了,由于整个系统是基于C++的,但是我们一般都是使用python来训练模型,这个时候就需要进行转换了。tensorflow提...

2018-12-13 12:57:33 7434 15

原创 Ubuntu18.04下安装配置darknet

最近要把物体检测模型用到整个系统中,系统采用的语言是C++,没办法,只能用darknet了~yolov3在速度和准确率上都表现的很出色,在这里讲下如何安装配置darknet。首先:git clone https://github.com/pjreddie/darknetcd darknetmake接着下载yolov3.weights,放入到darknet文件夹下。最后:./dark...

2018-12-11 19:04:16 4426 2

原创 Ubuntu16.04安装编译pcl点云库

在ubuntu下安装pcl点云库时,网上给出的教程,大多是分了几个步骤,安装pcl和其依赖库,未免过于麻烦,其实有很简单的方法,一行就可以搞定。sudo apt-get install libpcl-dev这样,对应的依赖项和pcl库都被安装编译好了,然后使用pcl_viewer测试下吧!where options are: -bc r,g,b ...

2018-12-11 10:42:48 3093

原创 常用的几种排序算法C++实现(冒泡排序,插入排序,选择排序)

源代码:#include <iostream>#include<vector>#include<algorithm>using namespace std;//冒泡排序,时间复杂度比较高,O(n^2)vector<int> bubbleSort(vector<int>& nums) { for (int i =...

2018-12-10 14:30:52 618

原创 LeetCode之寻找峰值

介绍峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设 nums[-1] = nums[n] = -∞。示例 1:输入: nums = [1,2,3,1]输出: 2解释: 3 是峰值元素,你的函数应该返回其索引 2。示例 ...

2018-12-10 12:12:14 168

原创 LeetCode之第一个错误版本

介绍:你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, …, n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出...

2018-12-10 10:38:21 109

原创 LeetCode之搜索旋转排序数组

介绍假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是 O(log n) 级别。示例1:输入: nums = [4,5,6,7,0,1,2], target...

2018-12-10 10:12:42 187

原创 LeetCode之猜数字大小

介绍我们正在玩一个猜数字游戏。 游戏规则如下:我从 1 到 n 选择一个数字。 你需要猜我选择了哪个数字。每次你猜错了,我会告诉你这个数字是大了还是小了。你调用一个预先定义好的接口 guess(int num),它会返回 3 个可能的结果(-1,1 或 0):-1 : 我的数字比较小 1 : 我的数字比较大 0 : 恭喜!你猜对了!示例 :输入: n = 10, pick = 6...

2018-12-09 20:26:49 450

转载 LeetCode之 x 的平方根

介绍:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。解题思路,同样是两个指针,一前一后,判断大小。源代码:#in...

2018-12-09 19:37:41 101

原创 LeetCode之二分查找

介绍:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例2:输入: nums = [-1,0,3,5,9,12], t...

2018-12-09 18:07:44 120

原创 LeetCode之两数之和

介绍:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解题思路:建...

2018-12-09 10:21:24 134

原创 RetinaNet算法详解及其在垃圾检测中的应用

实验数据实验数据就是街道上的垃圾数据了,生活垃圾、装潢垃圾、小垃圾等。实验结果源代码自己的源代码不再开源,详细请参考:https://github.com/fizyr/keras-retinanet...

2018-12-08 20:00:48 2595 4

转载 LeetCode之根据字符出现频率排序

介绍:给定一个字符串,请将字符串里的字符按照出现的频率降序排列。示例1:输入:"tree"输出:"eert"解释:'e'出现两次,'r'和't'都只出现一次。因此'e'必须出现在'r'和't'之前。此外,"eetr"也是一个有效的答案。示例2:输入:"cccaaa"输出:"cccaaa"解释:'c'和'a'都出现三次。此外,"aaaccc"也是有效的

2018-12-06 19:11:11 763

原创 LeetCode之同构字符串

介绍:给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。示例 1:输入: s = "egg", t = "add"输出: true示例2:输入: s = "foo", t = "bar"输出: false...

2018-12-06 17:07:47 315

原创 LeetCode之有效的字母异位词

介绍:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例2:输入: s = "rat", t = "car"输出: false说明: 你可以假设字符串只包含小写字母。进阶:如果输入字符串包含 unic

2018-12-06 15:52:39 169

转载 LeetCode之两个数组的交集

介绍:给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2,2]示例2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出: [4,9]说明: - 输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 - 我们可以不考虑输出结果的顺序。主...

2018-12-06 14:58:28 174

SSD缺陷检测裂纹源代码

基于SSD模型的裂纹检测,可以完成工业零件的缺陷识别定位,也可以扩展到其它应用场景。

2018-10-28

工件裂纹图像

工件的裂纹图像,工业数据集,不错的测试资源,可结合物体检测使用

2018-10-28

工业零件缺陷图像

工业缺陷零件图像,包括凸粉、漏底、碰凹、擦花四种。

2018-09-12

深度学习实现零件缺陷检测源代码

结合VGG和残差网络实现工业零件的缺陷检测,基于keras和tensorflow可以直接运行使用

2018-09-12

Mask RCNN源代码

Mask RCNN源代码,附有数据集,可以直接在windows中运行

2018-07-13

json数据的转换工具

用来转换.json文件,不用手动的去操作,只需放在json文件目录下,运行即可

2018-07-13

Mastering OpenCV with Practical Computer Vision Projects

计算机视觉进阶经典,国外畅销教材Mastering OpenCV with Practical Computer Vision Projects

2018-07-02

机器学习实战数据

机器学习实战中第二章数据,包含mnist数据集和约会数据,仅供参考

2018-06-22

CGAN源代码

CGAN条件生成式对抗网络源代码,可以直接运行,不错的参考资料

2018-06-02

Deep Dream源代码

谷歌Deep Dream源代码,可以直接运行,不错的参考资料

2018-06-02

SSD物体检测源代码

SSD物体检测源代码,基于谷歌object detection api,可以直接运行,不需要复杂的配置过程

2018-05-30

Faster RCNN源代码

基于python的faster rcnn源代码,包含训练和测试文件,可以修改应用到自己的工程中,不错的参考资料

2018-05-24

tensorflow训练CIFAR-10数据集源代码

tensorflow训练CIFAR-10源代码,可以直接运行使用,初学者的参考资料

2018-05-09

yolo3物体检测源代码

基于keras和tensorflow的物体检测python源代码,可以直接使用!

2018-05-09

深度学习艺术风格迁移keras源代码

艺术风格迁移源代码,基于keras框架,并包含下载好的VGG19模型,可以直接运行使用,初学者不错的学习资源

2018-05-05

视觉测量pdf 张广军版

张广军版视觉测量pdf 高清扫描(网上下载不到的资源)

2018-05-05

FreeImage库

下载好的FreeImage库,支持多种图像格式的操作,包括png、tiff等。

2018-04-23

编译好的assimp

windows下编译好的assimp库,可以和vs配置使用,亲测可用

2018-04-23

windows下编译好的boost库

windows下编译好的boost1.57版本库,可以放心配置使用。

2018-04-23

meshlab.zip

Meshlab官方文档,MeshLab 是一个开源、可移植和可扩展的三维几何处理系统,主要用于交互处理和非结构化编辑三维三角形网格。该系统发布于2005年年底,旨在提供一整套三维扫描、 编辑、 清洗、 拼合、 检查、 呈现和转换网格数据的工具。本教程对Meshlab软件进行了详细的介绍,方便快速上手。

2020-06-05

美团机器学习实践pdf高清扫描

美团机器学习实践pdf扫面版,内容包括特征选择,工程搭建等一系列干货。

2019-04-03

百面机器学习+剑指offer第二版pdf

百面机器学习和剑指offer第二版pdf,近百个机器学习和深度学习知识点总结,面试必备。

2019-02-20

read_pbtxt_file.py

read_pbtxt_file.py文件,从json转换到.record文件的代码

2019-01-22

mscoco_labels.names

mscoco_labels.names是coco数据集的标签信息,可以根据自己类别进行修改。

2018-12-29

opencv中的dnn模块

opencv中的dnn模块,有detection案例,以及pb文件到pbtxt的转换代码

2018-12-28

mask_rcnn .pb和.pbtxt文件

mask rcnn的.pb模型文件和.pbtxt文件,还有mask rcnn对应的颜色信息和标签信息

2018-12-27

SSD caffe模型

基于caffe训练的SSD300x300物体检测模型,结合opencv一起使用。

2018-12-26

synset_words.txt

ImageNet中分类的类别数目,包括各种相近的类别。

2018-12-26

bvlc_googlenet.prototxt

bvlc_googlenet.caffemodel的结构文件,配合model一起使用

2018-12-26

bvlc_googlenet.caffemodel

深度学习googleNet.caffemodel,配合opencv一起使用,完成分类任务。

2018-12-26

近年来收藏的.pcd模型文件,pcl学习处理使用

pcd模型文件,包括整幅场景图像和单个物体的点云图像。

2018-12-20

pcl点云模型

PCL点云模型,包含常见的几种动物模型,.pcd和.ply格式

2018-12-18

yolov3.weights

yolov3.weights文件,yolov3的训练参数,用于预训练。

2018-12-03

yolov3.h5,物体检测模型

yolov3.h5是预训练好的yolo模型,可供测试和预训练使用。

2018-12-03

yolov3源代码

基于keras的yolov3物体检测源码,可以直接运行使用,用于物体的定位识别。

2018-12-03

语义分割源代码

基于keras的语义分割源代码,包括segnet、U-Net、FCN,文件夹中包含训练和测试数据,以及训练好的模型。

2018-12-02

深度强化学习DQN训练Flappy bird源代码

深度强化学习DQN训练Flappy Bird源代码,可以直接运行FlappyBirdDQN.py使用。

2018-11-10

空空如也

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

TA关注的人

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