<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xiaoxifei的专栏]]></title><description><![CDATA[机器视觉与深度学习]]></description><link>https://blog.youkuaiyun.com/xiaoxifei</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xiaoxifei]]></copyright><item><title><![CDATA[Tensorflow 使用pip 安装失败（TensorFlow not found using pip）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/109095480</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/109095480</guid><author>xiaoxifei</author><pubDate>Thu, 15 Oct 2020 13:38:08 +0800</pubDate><description><![CDATA[使用pip 安装tensorflow时，有时候会报如下错误：

No matching distribution found for tensorflow


$ pip install tensorflow --user
Collecting tensorflow
Could not find a version that satisfies the requirement tensorflow (from versions: )
No matching distribution found for te]]></description><category></category></item><item><title><![CDATA[Pandas 将gbk和utf-8 的文件格式转换出错时的解决方法(windows)]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/108463200</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/108463200</guid><author>xiaoxifei</author><pubDate>Tue, 08 Sep 2020 10:22:26 +0800</pubDate><description><![CDATA[在Windows 下，进行utf-8 格式的相关转换时需要注意，许多编译器默认windows上的是ANSI编码的而非utf-8格式，这会导致绝大多数情况下BOM会丢失

因此在windows下进行转换时，要写清楚，比如我有一个gbk格式的csv文件，需要按照如下方式进行转换


import pandas as pd
df = pd.read_csv(path,encoding="gbk")
df.to_csv(path,encoding="utf-8-sig")

如果to_csv 里面直接写encodi]]></description><category></category></item><item><title><![CDATA[机器学习--基础--逻辑回归/分类（logistic regression）原理与设计思路]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/106092353</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/106092353</guid><author>xiaoxifei</author><pubDate>Wed, 13 May 2020 16:48:41 +0800</pubDate><description><![CDATA[logistic regression
文章目录logistic regression原理前言建模思路为什么采用sigmoid为什么采用交叉熵构建损失函数
原理
前言
逻辑回归与分类同线性回归与分类有很强的关系；关于逻辑回归算法本身的学习应当参考线性回所指出的一般性思路，即先找两个算法的共同点；其后就逻辑回归算法设计的独到之处进行辨明，即学习该算法相较于其他算法的不同点；从中领略算法设计的思想。
建模
逻辑回归的建模是明确且简单的，假设具有(x0(0),x1(0),...),(x0(1),x1(1),...]]></description><category></category></item><item><title><![CDATA[机器学习--基础--线性回归原理与机器学习一般性建模思路]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/106078356</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/106078356</guid><author>xiaoxifei</author><pubDate>Tue, 12 May 2020 16:34:30 +0800</pubDate><description><![CDATA[线性回归
文章目录线性回归原理机器学习最一般性的思路
原理
线性回归是一个很基础很简单的问题。如下所示




特征1
特征2
特征3
…
标签值




x10x_1^0x10​
x20x_2^0x20​
x30x_3^0x30​
…
y0y_0y0​


x11x_1^1x11​
x21x_2^1x21​
x31x_3^1x31​
…
y1y_1y1​


…
…
…
…
…


这是一组特征值序列以及他们的标签。
线性回归实际上是认为这些特征值同标签存在着线性相关的关系，关系可以描述为:
hθ(X)=]]></description><category></category></item><item><title><![CDATA[机器学习--基础--微分]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/106070773</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/106070773</guid><author>xiaoxifei</author><pubDate>Tue, 12 May 2020 14:36:23 +0800</pubDate><description><![CDATA[机器学习中用到的微分
文章目录机器学习中用到的微分背景现有常见微分方式梳理自动微分forward 方法backward方法自动微分与机器学习自动微分与机器视觉
背景
机器学习中尤其是深度学习用到的数学基础首推微分。机器学习中优化问题的解决大多数情况下同微分有关，比如牛顿法，梯度下降法；深度学习中就更不用说了，整个深度学习框架（tensorflow，pytoch等等）的基石，或者说首要处理的问题就是自动微分，pytorch的前身Chainer名字的来源更是微分中的链式罚则。可见理解机器学习中的微分有多重要。这]]></description><category></category></item><item><title><![CDATA[机器学习---优化---梯度下降]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/106056542</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/106056542</guid><author>xiaoxifei</author><pubDate>Mon, 11 May 2020 18:00:42 +0800</pubDate><description><![CDATA[梯度下降优化方法
文章目录梯度下降优化方法背景思想原理
背景
梯度下降优化方法是最为简单基础的优化方法，其直观好用的特点支持其广泛应用于传统的机器学习到深度学习任务；是非常基础且常用的方法；了解其原理对于理解机器学习的框架具有重要意义。
思想
梯度下降思想非常简单直观，具体可以如下图所述：

（这里不讨论具体优化函数的凸性与否）如图所示，梯度下降的思路是非常直观的，即从任意的初始点开始沿着梯度值减少的方向更新获得下一个计算点，在以此点迭代更新获得新的计算点，从而达到获取函数极值的目的。就像上图所示，从初始点]]></description><category></category></item><item><title><![CDATA[Pytorch 如何 优化/调整 模型参数]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/105854264</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/105854264</guid><author>xiaoxifei</author><pubDate>Thu, 30 Apr 2020 10:55:23 +0800</pubDate><description><![CDATA[Pytorch 如何自动优化/调整 模型超参
文章目录Pytorch 如何自动优化/调整 模型超参背景优化模型参数贝叶斯优化深度学习框架下的参数优化平台安装使用参考参考
背景
对于优化模型性能表现而言，主要可归纳为两种方式：

采用NAS的方式搜索，获得某个任务上最优的模型结构以及模型参数设置
优化模型参数

诚然，对于第一种方式来说，NAS对算力的消耗是巨大的，因而需要具备巨量计算资源才能够进行...]]></description><category></category></item><item><title><![CDATA[Python 安装tensorflow报错wrapt(cannot uninstall 'wrapt'. it is a distutils installed project tensorflow)]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/105675523</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/105675523</guid><author>xiaoxifei</author><pubDate>Wed, 22 Apr 2020 10:16:12 +0800</pubDate><description><![CDATA[本人环境：win10 pro 64bits Anaconda python3.6

安装tensorflow 2.0 以及 tensorflow 1.14



解决方法：

conda uninstall wrapt 或者pip uninstall wrapt

然后安装

下面是安装完成后截图


...]]></description><category></category></item><item><title><![CDATA[Python AudioSegment winError 2 The system cannot find the file specified（winError2 找不到系统文件）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/105295288</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/105295288</guid><author>xiaoxifei</author><pubDate>Fri, 03 Apr 2020 16:12:31 +0800</pubDate><description><![CDATA[这是一个pydub 包的开发错误；中文环境里面的解决方案几乎都是胡说八道，我查看了pydub的代码后，给出如下解决方案，亲测有效。我的环境是 python3.6 pydub 0.23.1

这个问题首先是由于ffmpeg造成的

1. 下载而不是直接安装ffmpeg

  下载地址是（http://ffmpeg.org/），这里需要注意的是下载ffmpeg的exe文件，而不是直接下载sou...]]></description><category></category></item><item><title><![CDATA[Pycharm 报错 buffer = _builtin_open(filename, 'rb')]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/104427492</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/104427492</guid><author>xiaoxifei</author><pubDate>Fri, 21 Feb 2020 14:36:06 +0800</pubDate><description><![CDATA[使用Pycharm 进行远程调试时会出现这样的错误，tokenize.py 报错，具体情况如下





这其实是pycharm没有设置好的原因，具体需要在设置编译器的时候，吧path mapping设置好，将本地位置和服务器上位置设置好mapping，只需要按部就班的设置就可以了。






...]]></description><category></category></item><item><title><![CDATA[图像去除栅格，条纹伪影的办法（附python代码）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103901675</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103901675</guid><author>xiaoxifei</author><pubDate>Thu, 09 Jan 2020 09:40:30 +0800</pubDate><description><![CDATA[医学图像中，有些时候由于使用栅格作为准束用的手段，这会导致栅格的信息叠加在图像中，形成所谓的栅格伪影，比如DR图像中的栅格伪影，如下所示：



比如像这张图像中的条纹，这就是栅格伪影。栅格伪影对于正常的图像检测是一种干扰，会影响到对图像细微结构的判断，会影响到图像整体展示效果，因而需要去除。

去除栅格伪影是一件简单的事情，因为从成像叠加的原理上来讲，栅格伪影是由准束用经过精确切割的滤线栅所造成...]]></description><category></category></item><item><title><![CDATA[Pytorch 模型训练如何提速（speed up pytorch model training）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103694398</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103694398</guid><author>xiaoxifei</author><pubDate>Wed, 25 Dec 2019 10:54:53 +0800</pubDate><description><![CDATA[前言

导致pytorch的模型训练速度比较慢的原因最有可能的是三个：1. 数据导入环节，操作复杂2.模型本身很复杂，数据流在模型中传递时过于耗时 3.loss函数计算复杂。

这其中第一个环节往往是最有可能的原因，第二，三个环节其实一回事；pytorch本身的框架针对这两个问题也做了大量的优化，如果不是专业技术过硬，建议在这两个环节上就不要过于纠结了，设计简单易用的模型才是正道。

数据导入环...]]></description><category></category></item><item><title><![CDATA[图像质量评估指标（6）自然图像质量评估NIQE （付代码链接）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103666186</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103666186</guid><author>xiaoxifei</author><pubDate>Mon, 23 Dec 2019 15:35:30 +0800</pubDate><description><![CDATA[一种新的无参考图像质量指标 NIQE
making a completely blind image quality analyzer
介绍
新的模型称之为NIQE(Natural Image Quality Evaluator),这个模型的设计思路是基于构建一系列的用于衡量图像质量的特征，并且将这些特征用于拟合一个多元的高斯模型，这些特征是从一些简单并且高度规则的自然景观中提取；这个模型实际上是...]]></description><category></category></item><item><title><![CDATA[Pytorch 版本的lookahead 优化函数使用(附代码)]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103324286</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103324286</guid><author>xiaoxifei</author><pubDate>Sat, 30 Nov 2019 14:35:25 +0800</pubDate><description><![CDATA[Lookahead 优化算法是Adam的作者继Adam之后的又一力作，论文可以参见https://arxiv.org/abs/1907.08610

这篇博客先不讲述Lookahead具体原理，先介绍如何将Lookahead集成到现有的代码中。

本人在三个项目中（涉及风格转换、物体识别）使用该优化器，最大的感受就是使用该优化器十分有利于模型收敛，原本不收敛或者收敛过慢的模型在使用lookahea...]]></description><category></category></item><item><title><![CDATA[从单据图片中提取感兴趣区域（附代码）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103289375</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103289375</guid><author>xiaoxifei</author><pubDate>Thu, 28 Nov 2019 10:53:13 +0800</pubDate><description><![CDATA[有一种任务是从单据或者是书籍的图片中找到相应的感兴趣区域，并将其提取出来以作后续的使用；示例如下所述：



比如上述红圈所描述的区域，提取出人名等有用信息。

解决这种问题的算法可以按照下面的过程进行：

1. 图像二值化

2. 简单去噪声干扰

3. 找到闭合区域，并用闭合区域的面积进行过滤选取

另附代码如下：


import cv2

# 图像预处理
image = cv2.imrea...]]></description><category></category></item><item><title><![CDATA[图像中检测小点算法思路（另附代码）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103288818</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103288818</guid><author>xiaoxifei</author><pubDate>Thu, 28 Nov 2019 10:36:46 +0800</pubDate><description><![CDATA[如何从图像中检测小数点，这是一个比较简单典型的问题。比如说像下面这样的一张图，检测出小数点的位置。



这里的思路简单来说可以按照下面的三个步骤：

1. 如果是RGB彩色图，可以转变为灰度图，然后使用阈值方法将其二值化（可以采用OTSU等自适应的阈值方法）

2. 采用简单降噪的方法把一些小的噪声点去除（这里方法很多样，一般可以采用高斯低通或者形态学方法）

3. 找到闭合轮廓线，使用轮廓线围...]]></description><category></category></item><item><title><![CDATA[tensorflow 报错DLL load failed：找不到指定的模块]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103234555</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103234555</guid><author>xiaoxifei</author><pubDate>Mon, 25 Nov 2019 11:05:12 +0800</pubDate><description><![CDATA[我在重新安装tensorflow 1.12 版本（GPU与CPU）时报如下错误。





这个错误很简单，就是CUDA版本CUDNN版本同安装的tensorflow版本不匹配，由于我早已经安装CUDA10.0以及相应版本的CUDNN，所以会报这个错误。因为其他项目依赖CUDA10.0 因此我无法降低CUDA版本，所以解决这个问题很简单，重新安装tensorflow 1.14.0 版本即可。

如...]]></description><category></category></item><item><title><![CDATA[Python time 模块time 函数的时间单位]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103201788</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103201788</guid><author>xiaoxifei</author><pubDate>Fri, 22 Nov 2019 15:35:18 +0800</pubDate><description><![CDATA[Python 中time 模块下的time 常用于计算函数运行的时间


import time 


starttime = time.time()
xxx
endtime = time.time()
print('xxx {:.5f} s'.format(endtime-starttime))

这里的时间单位是秒（s）， 可以参见官方文档对此的描述（https://docs.python.o...]]></description><category></category></item><item><title><![CDATA[加权平均融合消除图像拼接的拼缝（Python 代码）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/103045958</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/103045958</guid><author>xiaoxifei</author><pubDate>Wed, 13 Nov 2019 11:39:46 +0800</pubDate><description><![CDATA[这里提供一种采用加权平均融合消除图像拼缝的算法，供大家使用。

如下图所示，如果两张图像直接进行拼接，就会在拼接位置处产生一条拼接缝，拼接缝的产生来源于两张图像光场有差别所导致的两者虽然是连续的结构，但是在两张图中的具体数字存在一定的差异。对于具有重叠部分的两张图像，消除这种拼缝的方法主要是基于特征点匹配所涉及；但是加权平均融合方法是最为简单有效的办法，这里将此算法的python代码给出。



...]]></description><category></category></item><item><title><![CDATA[Python 有重叠的切分图像 代码（overlap split image）]]></title><link>https://blog.youkuaiyun.com/xiaoxifei/article/details/102737692</link><guid>https://blog.youkuaiyun.com/xiaoxifei/article/details/102737692</guid><author>xiaoxifei</author><pubDate>Fri, 25 Oct 2019 10:13:57 +0800</pubDate><description><![CDATA[在深度神经网络训练过程中，常常需要将图像有重叠的切割后送入网络。我现在把这段简单的代码放出来供大家参考。


import numpy as np
import cv2

def cutimg(img,num,overlap_factor):   
    '''img 是图像矩阵，num是切过后子图数目，因为统一为正方形切图，因此这里的num开方后需要为整数，
        overlap_f...]]></description><category></category></item></channel></rss>