自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

pan_jinquan的博客

专研图像处理、深度学习

原创 pytorch实现L2和L1正则化regularization的方法

pytorch实现L2和L1正则化的方法目录目录pytorch实现L2和L1正则化的方法1.torch.optim优化器实现L2正则化2. 如何判断正则化作用了模型?2.1 未加入正则化loss和Accuracy2.1 加入正则化loss和Accuracy2.3 正则化说明3.自定义正则化的方法3.1 自定义正则化Regularization类3.2...

2019-03-14 16:44:27 30993 12

原创 使用自己的数据集训练MobileNet、ResNet实现图像分类(TensorFlow)

使用自己的数据集训练MobileNet、ResNet实现图像分类(TensorFlow)之前鄙人写了一篇博客《使用自己的数据集训练GoogLenet InceptionNet V1 V2 V3模型(TensorFlow)》https://panjinquan.blog.csdn.net/article/details/81560537,本博客就是此博客的框架基础上,完成对MobileNet的图...

2019-03-09 10:55:54 20640 73

原创 TensorFlow使用Python自定义op和损失函数

TensorFlow使用Python自定义op和损失函数TensorFlow是静态图结构,即必须把所有的操作以及网络结构定义好(后来有了动态图功能,即Eager Execution ),在没有用tf.Session().run接口填充值之前是没有实际值的。因此,在网络搭建的时候,是不能对tensor进行判值操作的,即不能插入if...else...之类的代码。这相较于numpy array,T...

2019-02-14 09:27:08 3737 1

原创 TensorFlow数据读取机制:文件队列 tf.train.slice_input_producer和 tf.data.Dataset机制

TensorFlow数据读取机制:文件队列 tf.train.slice_input_producer和tf.data.Dataset机制 之前写了一篇博客,关于《Tensorflow生成自己的图片数据集TFrecord》,项目做多了,你会发现将数据转为TFrecord格式,实在是太麻烦了,灵活性太差!后面就总结一下TensorFlow数据读取机制,主要还是介绍tf.data.Datas...

2018-12-20 16:29:43 4528

原创 利用MTCNN和facenet实现人脸检测和人脸识别

利用MTCNN和facenet实现人脸检测和人脸识别 人脸检测和人脸识别技术算是目前人工智能方面应用最成熟的技术了。本博客将利用mtcnn和faceNet搭建一个实现人脸检测和人脸识别的系统。基本思路也很简单,先利用mtcnn的进行人脸检测,当然也可以使用其他的人脸检测方法,如Dilb,OpenCV,OpenFace人脸检测等等,然后再利用faceNet进行人脸识别,faceNet可简单...

2018-12-09 14:29:07 27097 48

原创 OpenCV+yolov3实现目标检测(C++,Python)

OpenCV+yolov3实现目标检测(C++,Python)    目标检测算法主要分为两类:一类是基于Region Proposal(候选区域)的算法,如R-CNN系算法(R-CNN,Fast R-CNN, Faster R-CNN),它们是two-stage(两步法)的,需要先使用Selective search或者CNN网络(RPN)产生Region Proposal,然后再在Regi...

2018-11-15 09:38:29 12491 13

原创 TensorFlow使用CNN实现中文文本分类

TensorFlow使用CNN实现中文文本分类    读研期间使用过TensorFlow实现过简单的CNN情感分析(分类),当然这是比较low的二分类情况,后来进行多分类情况。但之前的学习基本上都是在英文词库上训练的。断断续续,想整理一下手头的项目资料,于是就拾起读研期间的文本分类的小项目,花了一点时间,把原来英文文本分类的项目,应用在中文文本分类,效果还不错,在THUCNews中文数据集上,...

2018-11-14 19:23:21 15067 6

原创 OpenCV+yolov2-tiny实现目标检测(C++)

OpenCV+yolov2-tiny实现目标检测(C++)    目标检测算法主要分为两类:一类是基于Region Proposal(候选区域)的算法,如R-CNN系算法(R-CNN,Fast R-CNN, Faster R-CNN),它们是two-stage(两步法)的,需要先使用Selective search或者CNN网络(RPN)产生Region Proposal,然后再在Region...

2018-10-06 18:19:30 10798 3

原创 YUV420与YUV444互转,YUV420与YUV444读取和保存,YUV的显示和播放功能

YUV420与YUV444互转,YUV420与YUV444读取和保存,YUV的显示和播放功能【尊重原创,转载请注明出处】:https://blog.csdn.net/guyuealian/article/details/82454945    OpenCV提供了RGB与YUV420/YUV444互转的接口:cvtColor(),但根尴尬OpenCV就是没有提供YUV444与YUV420互转...

2018-09-30 11:48:12 5036

原创 tensorflow实现将ckpt转pb文件

tensorflow实现将ckpt转pb文件【尊重原创,转载请注明出处】:https://blog.csdn.net/guyuealian/article/details/82218092 本博客实现将自己训练保存的ckpt模型转换为pb文件,该方法适用于任何ckpt模型,当然你需要确定ckpt模型输入/输出的节点名称。目录tensorflow实现将ckpt转pb文件一、C...

2018-09-01 07:32:30 55854 61

原创 OpenCV使用pthread实现多线程加速处理图像(C++)

OpenCV使用pthread实现多线程加速处理图像【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/81912704目录OpenCV使用pthread实现多线程加速处理图像1.pthread多线程加速2.自己封装的多线程cvThread类    POSIX线程(POSIX threads),简称P...

2018-08-21 19:41:44 10436 4

原创 使用自己的数据集训练GoogLenet InceptionNet V1 V2 V3模型(TensorFlow)

使用自己的数据集训练GoogLenet InceptionNet V1 V2 V3模型(TensorFlow)【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/81560537新增博客《使用自己的数据集训练MobileNet、ResNet图像识别(TensorFlow)》https://panjinquan.blo...

2018-08-17 16:14:28 32362 125

原创 Tensorflow生成自己的图片数据集TFrecords(支持多标签label)

Tensorflow生成自己的图片数据集TFrecords       尊重原创,转载请注明出处:https://blog.csdn.net/guyuealian/article/details/80857228       使用TensorFlow进行网络训练时,为了提高读取数据的效率,一般建议将训练数据转换为TFrecords格式。为了方面调用,本博客提供一个可通用,已经封装好的cre...

2018-06-29 15:29:12 12191 35

原创 OpenCV调用TensorFlow预训练模型

OpenCV调用TensorFlow预训练模型 【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/80570120 强大OpenCV从自OpenCV 3.1版以来,dnn模块一直是opencv_contrib库的一部分,在3.3版中,它被提到了主仓库中。新版OpenCV dnn模块目前支持Caffe、T...

2018-06-07 12:27:31 32196 73

原创 OpenCV实现最大最小距离聚类算法

OpenCV实现最大最小距离聚类算法    【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/80255524    本博客提供多版本的最大最小距离聚类算法:《聚类算法-最大最小距离算法(实例+代码)》,提供C++,Python,OpenCV以及Matlab版本的最大最小距离聚类算法的实现目录OpenCV实...

2018-05-09 16:52:19 6611 5

原创 将tensorflow训练好的模型移植到Android (MNIST手写数字识别)

将tensorflow训练好的模型移植到Android (MNIST手写数字识别)【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/79672257项目Github下载地址:https://github.com/PanJinquan/Mnist-tensorFlow-AndroidDemo ,麻烦给个“star”...

2018-04-08 14:59:31 15813 28

原创 OpenCV常见的优化方法和技巧总结

OpenCV常见的优化方法和技巧总结    【尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/78540206目录OpenCV常见的优化方法和技巧总结 一、OpenCV常见的优化方法总结1.1 cv::imread()设置reduce模式:1.2 查表法:LUT,1.3 像素遍历1.4 ope...

2018-02-24 15:53:36 6471 2

原创 OpenCV android sdk配置OpenCV android NDK开发实例

OpenCV android sdk配置OpenCV android NDK开发实例       【尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/78374708        在Android应用中调用OpenCV进行图像处理的方法有很多种,考虑到性能问题,本人推荐使用NDK进行开发,毕竟C/C++要比Java性...

2017-11-11 13:07:33 7871 6

原创 使用gensim训练中文语料word2vec

使用gensim训练中文语料word2vec 目录使用gensim训练中文语料word2vec1、项目目录结构1.1 文件说明:1.2 项目下载地址2、使用jieba中文切词工具进行切词2.1 添加自定义词典2.2 添加停用词2.3 jieba中文分词 2.4 完整代码和测试方法 3、gensim训练模型1、项目目录结构1.1 文件说明:...

2017-06-25 16:37:05 4168

原创 Adaboost算法原理分析和实例+代码(简明易懂)

Adaboost算法原理分析和实例+代码(简明易懂) 【尊重原创,转载请注明出处】 http://blog.csdn.net/guyuealian/article/details/70995333 本人最初了解AdaBoost算法着实是花了几天时间,才明白他的基本原理。也许是自己能力有限吧,很多资料也是看得懵懵懂懂。网上找了一下关于Adaboost算法原理分析,大都是你复制我,我摘...

2017-05-02 08:52:31 94058 110

原创 协方差矩阵和散布矩阵(散度矩阵)的意义

协方差矩阵和散布矩阵的意义 在机器学习模式识别中,经常需要应用到协方差矩阵C和散布矩阵S。如在PCA主成分分析中,需要计算样本的散度矩阵,有的论文是计算协方差矩阵。实质上二者意义差不多,散布矩阵(散度矩阵)前乘以系数1/(n-1)就可以得到协方差矩阵了。 在模式识别的教程中,散布矩阵也称为散度矩阵,有的也称为类内离散度矩阵或者类内离差阵,用一个等式关系可表示为: 关系:散度矩阵=类内离散度矩阵=类内离差阵=协方差矩阵×(n-1) 样本的协方差矩阵乘以n-1倍即为散布矩阵,n表示样本

2017-03-31 19:27:42 25428

原创 PCA原理分析和Matlab实现方法(三)

PCA主成分分析原理分析和Matlab实现方法(三) PCA算法主要用于降维,就是将样本数据从高维空间投影到低维空间中,并尽可能的在低维空间中表示原始数据。PCA的几何意义可简单解释为: 0维-PCA:将所有样本信息都投影到一个点,因此无法反应样本之间的差异;要想用一个点来尽可能的表示所有样本数据,则这个点必定是样本的均值。 1维-PCA:相当于将所有样本信息向样本均值的直线投影; 2维-PCA:将样本的平面分布看作椭圆形分布,求出椭圆形的长短轴方向,然后将样本信息投

2017-03-30 17:03:19 65769 7

原创 聚类算法-最大最小距离算法(实例+代码)

聚类算法-最大最小距离算法(实例+代码)    【尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/53708042目录聚类算法-最大最小距离算法(实例+代码)一、最大最小距离算法基本思想二、算法实现步骤1.最大最小距离聚类算法(Matlab版本)2.最大最小距离聚类算法(Python版本)3....

2016-12-17 17:35:13 32756 37

原创 解决‘tf.ResizeNearestNeighbor‘ op is neither a custom op nor a flex op

解决'tf.ResizeNearestNeighbor' op is neither a custom op nor a flex op将tensorflow模型转换为TFlite模型:参考我的博客https://panjinquan.blog.csdn.net/article/details/107231435,其中可能会出现转换错误:'tf.ResizeNearestNeighbor' op is neither a custom op nor a flex op<unknown&g.

2020-07-15 15:48:05 202 2

原创 Tensorflow2.0(Keras)转换TFlite

Tensorflow 2.0(Keras)转换TFlite以下脚本实现将Tensorflow2.0(Keras)保存的模型(建议保存为*.h5的格式),转换TFlite模型(1)TensorFlow Lite 转换器https://tensorflow.google.cn/lite/guide/ops_select为了能够转换包含 TensorFlow 运算符的 TensorFlow Lite 模型,可使用位于TensorFlow Lite 转换器中的target_spec.suppo...

2020-07-11 10:09:21 812

原创 onnx模型推理(python)

onnx模型推理(python)以下ONNX一个检测模型的推理过程,其他模型稍微修改即可# -*-coding: utf-8 -*-import os, syssys.path.append(os.getcwd())import onnxruntimeimport onnxclass ONNXModel(): def __init__(self, onnx_path): """ :param onnx_path: """

2020-06-23 20:00:10 740 1

原创 C++读取numpy数据二进制文件

C++读取numpy数据二进制文件C++与Python中变量对应的精度类型:https://docs.scipy.org/doc/numpy/user/basics.types.html#array-types-and-conversions-between-types(1)将numpy数组保存为二进制文件def save_bin(data, bin_file, dtype="double"): """ C++int对应Python np.intc C++float

2020-05-29 11:51:40 460

原创 conda重命名环境env

conda重命名环境env(1)方法1:cloneconda 其实没有重命名指令,实现重命名是通过 clone 完成的,分两步:先 clone 一份 new name 的环境 删除 old name 的环境具体操作参考:https://blog.csdn.net/weixin_30300225/article/details/95255742(2)方法2:直接修改conda env名字(推荐)conda的虚拟环境安装在"/home/dm/anaconda3/envs" 下图是本.

2020-05-26 11:41:45 485

原创 相机内参外参

相机内参外参1.像素坐标具体参见百度百科:https://baike.baidu.com/item/像素坐标/53722252.相机内参矩阵(Intrinsic matrix)说内参矩阵之前,还得再引入像素坐标系的概念。上述图像点的表示是长度单位,不是像素,由于我们拿到的图像是以像素来衡量的,因此还需要将图像坐标系转化为像素坐标系。在此直接给出结论:于是之前的相机矩...

2020-04-22 21:11:08 626

原创 opencv多线程显示的问题和解决方法

opencv多线程显示的问题和解决方法1.问题描述由于业务需求,需要在多线程中,使用OpenCV读取图片并显示,实现很简单,只需要调用python的threading创建线程,并在线程中显示图片即可,但会出现一个问题: 只能显示第一张图图片,第二张图图片就会阻塞掉!!!这是最初的精简的BUG代码import osimport cv2import globimport...

2020-04-18 11:36:23 1219

原创 世界坐标系,相机坐标系和图像坐标系的转换(Python)

世界坐标系,相机坐标系和图像坐标系的转换(Python)相机内参外参说明:https://panjinquan.blog.csdn.net/article/details/102502213计算机视觉:相机成像原理:世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换:https://blog.csdn.net/chentravelling/article/details/535580...

2020-02-05 16:45:40 8571 6

原创 matplotlib figure转为numpy array或者PIL图像进行显示

matplotlib figure转为numpy array或者PIL图像进行显示实现将matplotlib绘制的图像转换为numpy数组,并使用PIL或者OpenCV进行显示参考资料:http://www.icare.univ-lille1.fr/tutorials/convert_a_matplotlib_figure# -*- coding: utf-8 -*-"""# -...

2020-02-05 11:13:20 2097

原创 OpenCV cv2.putText实现字符串换行'\n'

OpenCV cv2.putText实现字符串换行'\n'OpenCV显示字符串时,可以调用cv2.putText直接进行显示方法,但该函数是不支持换行符"\n"的要想实现自动换行,需要自己编程计算字符宽度,下移动宽度等操作这里提供自己实现draw_text_line()函数,可以直接支持换行符的显示代码实现:# -*-coding: utf-8 -*-""" ...

2019-12-11 20:15:10 2323

原创 解决TypeError: Tensor is unhashable if Tensor equality is enabled. Instead, use tensor.experimental_re

解决方法:重新安装tensorflow_probabilitypip install tensorflow_probability==0.8.0rc0 --user --upgrade

2019-12-09 11:25:35 3731 6

原创 docker学习笔记

docker学习笔记常用的镜像:docker pull anibali/pytorch:cuda-10.0删除none的镜像:#!/bin/bashdocker ps -a | grep "Exited" | awk '{print $1}' | xargs docker stopdocker ps -a | grep "Exited" | awk '{print $1}...

2019-10-17 17:26:31 18987 4

原创 python实现点到平面的距离

python实现点到平面的距离目录python实现点到平面的距离1.三点定面2.点到面的距离3.python实现点到面的距离关于点线面之间关系可以参考:https://blog.csdn.net/qq_23869697/article/details/826882771.三点定面空间上任意三个不共线的点,可以确定一个平面,三点定面的例子:2.点到面的距离...

2019-10-11 15:19:44 1780

原创 使用Open3D绘制三角形

使用Open3D绘制立体三维三角形# -*-coding: utf-8 -*-""" @Project: PyKinect2-OpenCV @File : open3d_test.py @Author : panjq @E-mail : pan_jinquan@163.com @Date : 2019-10-10 09:49:27"""...

2019-10-11 11:47:08 1522

原创 Open3D绘制3D坐标,绘制点云

Open3D绘制3D坐标,绘制点云# -*-coding: utf-8 -*-""" @Project: PyKinect2-OpenCV @File : open3d_test.py @Author : panjq @E-mail : pan_jinquan@163.com @Date : 2019-10-10 09:49:27""...

2019-10-10 10:18:05 4970 3

原创 解决 from torch._C import *ImportError: DLL load failed: 找不到指定的程序。

from torch._C import *ImportError: DLL load failed: 找不到指定的程序。Python3.6.0有问题,升级Python版本conda install python=3.6.2

2019-09-03 21:47:34 7411 8

原创 Git学习笔记

Git学习笔记1.初始化仓库Command line instructionsGit global setupgit config --global user.name "panjinquan"git config --global user.email "panjinquan@dm-ai.cn"Create a new repositorygit clone...

2019-08-22 16:51:24 225 1

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