遇到的小问题

四通道图像

所谓三通道图像是指具有RGB三种通道的图像,简单来说就是彩色图像。R:红色,G:绿色,B:蓝色。比如红色为(255,0,0)
四通道图像是在三通道的基础上加上了一个Alpha通道,Alpha用来衡量一个像素或图像的透明度。比如Alpha为0时,该像素完全透明,Alpha为255时,该像素是完全不透明。
如何将四通道转换为三通道呢?

from PIL import Image
image = Image.open(filename).convert('RGB')

One hot encode

One-hot又叫读热编码

我们总会遇到一些无序的特征比如:颜色、性别、国籍等等


下面我们拿颜色举例:

红黄蓝,这三种值其没有先后之分,如果我们只用0,1,2对其进行编码的话

我们要计算两两之间的距离(欧式)时

\(dist(红,蓝)=2,dist(红,黄)=1,dist(蓝,黄)=1\),那么这种计算距离的方式好吗?

很明显我们无法说明红和蓝之间的距离就比较大

对此,我们需要采用one-hot编码

\(红(1,0,0),黄(0,1,0),蓝(0,0,1)\)

这样的话我们计算其三者的距离就会发现都为\(\sqrt2\)


pandas.get_dummies的使用

import pandas as pd
data = {"color":["res","yellow","blue"]}
df = pd.DataFrame(data)

# 实现one hot encode
pd.get_dummies(df)

posted @ 2022-10-03 14:35  Sheldon2  阅读(30)  评论(0编辑  收藏  举报