输出将保持不变,与上一个没有任何区别。步骤4:为阈值图像添加颜色。现在我们完成了二值化,是时候将灰度图像转换为RGB图像了。mapping = cv2.cvtColor(thresholded_img, cv2.COLOR_GRAY2RGB)
np.unique(mapping)
在输出中,将颜色应用于图像后,它包含两个唯一的像素值,即0,255。我们将在接下来的步骤中应用背景模糊。4.1:对原始图像应用模糊处理。接下来,让我们将背景模糊效果应用于原始输入图像。blurred_original_image = cv2.GaussianBlur(orig_imginal,
(251,251),0)
plt.imshow(blurred_original_image)
4.2:获得背景模糊。在这个步骤中,我们使用简单的代码片段对输入图像的背景进行模糊处理。layered_image = np.where(mapping != (0,0,0),
orig_imginal,
blurred_original_image)
plt.imshow(layered_image)
在上面的代码片段中,我们所做的只是简单地填充像素强度值为0的模糊图像,即填充所有黑色像素和填充像素强度值为255(白色像素)的原始图像,这产生了一个漂亮的散景效果,如下图所示。
4.3:最后保存图像。现在剩下要做的就是保存散景图像了!im_rgb = cv2.cvtColor(layered_image, cv2.COLOR_BGR2RGB)
cv2.imwrite("Potrait_Image.jpg", im_rgb)
5. 得分
本文是参考Bhavesh Bhatt的视频而写的,在 GitHub 页面上提供了带有逐行注释的完整代码。
6 . 结论
总而言之,获得背景模糊只是深度学习可以做的事情之一,随着技术的进步,深度学习模型从分类到生成深层伪造的模型做的越来越好了,在不久的未来,相信会有更大的发展。