0

Windows下安装Python-Opencv的方法

由于Python2.x下安装Opencv比较容易,但是在Python3.x下安装Opencv我一直找不到很好的解决办法,查了资料解决办法如下

  • 打开http://www.lfd.uci.edu/~gohlke/pythonlibs/#OpenCV
  • 选择你要的版本,然后pip install opencv_python-xxx.whl

我下载的是opencv_python-3.2.0-cp35-cp35m-win_amd64.whl

然后再Python命令行import cv2,如果没有问题表示按照成功了

参考资料

0

Python奇技淫巧——Unpacking Argument Lists

在Python2.7的文档中,有介绍Unpacking Argument Lists的文档,unpacking arguments lists的字面意思看起来比较陌生,但是如果你看下面的代码就知道它是什么意思了

**d就是unpacking argument的一种方法,将字典d解包之后将对应的参数传给有名元组Point,需要注意的是,被解包的字典的key的名字一定要和namedtuple的field_names相对应,否则会报错。 Continue Reading

0

Numpy奇技淫巧——抽样

在处理数据的时候,我需要从10000条记录中一次抽样1000条记录,可以用random.sample实现,思路是生成相应的随机索引,然后再去按照索引去抽取数据,代码如下

代码中,index表示从10000条记录中获取随机获取的1000条记录的索引,然后按照索引去获取数据,思路就是那么简单,而且也不会出错。

或者,index的生成也可以采用下面这种方法

0

转换RGBA通道为RGB通道

通常来说,一张图片有RGB三通道,但是有些图片有第四通道,那就是alpha通道,这个通道表示透明度的概念,下面介绍怎么利用PIL来吧RGBA通道转成RGB通道。

首先使用img.mode判断是否是RGBA通道

然后定义convert_to_rgb函数

Continue Reading

0

PIL crop函数的用法

最近在用TensorFlowCNN的程序,需要对几万张图片进行剪切和处理,利用PIL这个Python处理图片的库可以很方便对图片进行处理。当我们使用PIL读取了图片之后,可以利用crop()函数对图片进行剪切。

详细文档如下所示:

在介绍怎么截图之前,有必要说明以下,对于图像的坐标,它的原点是最左上角那个点,X轴往右,Y轴往下。如果我想删除图片的前30行和后30行,左右保持不变,代码如下

再来个看得见的例子吧,原始图片是下面这张图

图片的size是1280 x 863,图片来自网络

Continue Reading

0

Windows下安装xgboost库

xgboost是一个很强大的开源库,在Linux下安装还是很简单的,但是在Windows下安装比较麻烦一些,需要安装MinGW-w64,然后我们利用mingw32-make.exe编译器来编译xgboost

第一步 安装MinGW-w64

https://sourceforge.net/projects/mingw-w64/ 这个是安装文件的地址,下载下来的exe文件是在线安装的,这里我们使用离线安装包安装,这里我使用64位的版本,下载地址为:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/,选择最新的版本,然后选择posix版本的,然后进入seh的目录,选择第一个下载即可。地址为:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/6.2.0/threads-posix/seh/

下载完之后解压,然后进入bin目录,把bin目录添加到环境变量中,添加完了之后,打开powershell,输入mingw32-make.exe,如果显示如下内容表示安装成功

Continue Reading

0

Coding ML:Sigmoid function

[latexpage]

在神经网络中,sigmoid函数很常用,而在LR当中,这个函数也很常见,那么如何使用sigmoid函数实现一个神经网络的sigmoid函数呢?这里我们采用梯度下降的算法使用sigmoid函数来更新权重,下面是权重更新公式
\begin{equation}
\omega_i=\omega_i+\Delta w_i
\end{equation}
其中$\Delta w_i$为
\begin{equation}
\Delta w_{i} = \eta (y – \sigma )\sigma(1-\sigma)x_{i}
\end{equation} Continue Reading

0

scikit-learn奇技淫巧——LinearRegression

[latexpage]

Scikit-learn是Python机器学习的一个很强大的库,最近刚开始接触scikit-learn,就以奇技淫巧的方式来介绍一下它的使用吧,本文以线性回归为例

线性回归的内容主要在本站的机器学习——回归目录下有一些介绍,线性回归的模型一般为
\begin{equation}
f(x)=\omega_0{x_0}+\omega_1{x_1}+…+\omega_n{x_n}+\epsilon
\end{equation}
其中$\omega_i$是回归系数,$x_i$是方程的特征,$\epsilon$是模型的误差项,是模型还没有考虑的部分 Continue Reading