将图像背景颜色更改为白色?

时间:2016-02-23 11:06:36

标签: python image opencv

我有一组图像,基本上是图像的光流。

光流的代码取自this post. 我在OpenCV中使用了密集光流。

我想将图像从黑色背景转换为白色背景。

enter image description here

enter image description here

这就是我现在所拥有的,但我觉得它不是一个真正的转变。 我可以用任何方式保持相同的信息吗?尽管将30比1打包,但所有信息都会保持不变。我觉得它有太多的额外信息(小动作也保存) 有什么想法吗?

import cv2
import os
import sys
import numpy as np

img1='/home/anilil/Downloads/1.png'
im = cv2.imread(img1,1)
im [im<30]=254

cv2.imshow('abc',im)
cv2.waitKey(10000)
cv2.destroyAllWindows()

im [im<30]=254中的30改为其他值会产生几个差异图像。

输出图像

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

使用以下算法:

- 将光流转换为灰度

- 在图像上应用反向阈值:

cv2.threshold(src,10,255,cv2.THRESH_BINARY_INV,mask)

- 使用cv2.addWeighted(,,,)

执行src(原始图像)和掩码的加权加法