我目前正在尝试从图像中裁剪人脸。
无论图像中有多少张脸,我都希望代码能够正常工作。
输入图像的一个例子:带有人脸的图像
我想裁剪面部,以便我可以对它们运行面部关键点检测算法(以前制作过)。
最终结果将如下所示: 面部关键点检测后的图像
我的代码目前是:
# Load in color image for face detection
image = cv2.imread('images/obamas4.jpg')
# Convert the image to RGB colorspace
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# Make a copy of the original image to draw face detections on
image_copy = np.copy(image)
# Convert the image to gray
gray_image = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
# Detect faces in the image using pre-trained face dectector
faces = face_cascade.detectMultiScale(gray_image, 1.25, 6)
# Print number of faces found
print('Number of …Run Code Online (Sandbox Code Playgroud) 假设我想使用 Keras 的Convolutional2D函数构建 CNN,输入图像可以是 size[224, 320, 3]而不是类似 的大小吗[224, 224, 3]?
我应该将图像保留为矩形格式还是将其缩放为正方形?我尝试将它们制作成正方形,但质量大大下降+边缘周围有重要数据。
如果我用矩形输入图像构建它,它最终会破坏线路吗?
我还想在 CNN 的末端附加一个解码器,以输出相同形状的图像(本质上是带有矩形图像而不是正方形的 VAE)。
convolution neural-network autoencoder conv-neural-network keras
我有两个类似的 DataFrame。
df1.head()
1 2 3 4
3234 Lorum Ipsum Foo Bar
8839 NaN NaN NaN NaN
9911 Lorum Ipsum Bar Foo
2256 NaN NaN NaN NaN
df2.head()
1 3 4
8839 Lorum Ipsum Foo
2256 Lorum Ipsum Bar
Run Code Online (Sandbox Code Playgroud)
我想根据相同的索引和列合并/更新两者以更新 NaN 值。
理想结果:
df3.head()
1 2 3 4
3234 Lorum Ipsum Foo Bar
8839 Lorum NaN Ipsum Foo
9911 Lorum Ipsum Bar Foo
2256 Lorum NaN Ipsum Bar
Run Code Online (Sandbox Code Playgroud)
df2不包含所有列,df1但它包含匹配的列并且它具有匹配的索引。
我试过这个:
df3 = df1.update(df2)
Run Code Online (Sandbox Code Playgroud)
但是一直没有成功。我一直在查看文档并认为pd.merge或pd.concat …
我想将散布值列表转换为字典数组.
我正在尝试在Python中创建一个能够与JSON API一起使用的预测值列表.一旦我有了字典,我就会使用json.dumps它.
my_list = [35, 2.75, 67, 3.45] # in form of: (value, score, value, score)
Run Code Online (Sandbox Code Playgroud)
理想的结果:
my_array_of_dicts = [{'value':35, 'score':2.75}, {'value':67 'score':3.45}]
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的.
第一次尝试:
d = dict(zip(my_list[::2], my_list[1::2]))
Run Code Online (Sandbox Code Playgroud)
它产生......
> {35: 2.75,
67: 3.45}
Run Code Online (Sandbox Code Playgroud)
我不知道如何获得自定义键.或者将每对作为自己的字典.
第二次尝试:
[{'value':i, 'score':i} for i in my_list]]
> [{'value':35, 'score':35}, {'value':2.75, 'score':2.75},
{'value':67, 'score':67}, {'value':3.45, 'score':3.45}]
Run Code Online (Sandbox Code Playgroud)
它很接近,但并没有考虑每一秒的分数值.
我试图将一个样本文本拆分成一个没有分隔符的句子列表,每个句子末尾没有空格.
示范文本:
你第一次看到第二次文艺复兴时,它可能看起来很无聊.至少看两次,绝对看第2部分.它会改变你对矩阵的看法.人类是开始战争的人吗?AI是一件坏事吗?
进入此(所需输出):
['The first time you see The Second Renaissance it may look boring', 'Look at it at least twice and definitely watch part 2', 'It will change your view of the matrix', 'Are the human people the ones who started the war', 'Is AI a bad thing']
Run Code Online (Sandbox Code Playgroud)
我的代码目前是:
def sent_tokenize(text):
sentences = re.split(r"[.!?]", text)
sentences = [sent.strip(" ") for sent in sentences]
return sentences
Run Code Online (Sandbox Code Playgroud)
但是这个输出(电流输出):
['The first time you see The Second Renaissance it may look boring', …Run Code Online (Sandbox Code Playgroud) 我有一个数据框numpy.float64作为列名称。
df =
2006.0 2007.0 2008.0 2009.0
0 foo foo bar bar
1 foo foo bar bar
Run Code Online (Sandbox Code Playgroud)
我想将它们更改为字符串并删除小数位:
df =
2006 2007 2008 2009
0 foo foo bar bar
1 foo foo bar bar
Run Code Online (Sandbox Code Playgroud)
我尝试将列保存到列表中并df.columns.tolist()在那里更改它们,但我没有运气。
任何帮助将不胜感激!
python ×5
dataframe ×2
pandas ×2
arrays ×1
autoencoder ×1
convolution ×1
dictionary ×1
json ×1
keras ×1
numpy ×1
opencv ×1
regex ×1
split ×1