1、先构造一张画布,分为上下两半,上面一半是给定的图片,下面一半是与给定的图片,尺寸完全一样的纯黑色图片。a=img*0

2、把下面的图片先用原图代替。a=img*1

3、对a的红色区域进行单独处理:for i in range(u): for j in range(v): b,g,r=img[i,j] if r>=b>=g: a[i,j]=np.array([g,r,b]) elif r>=g>=b: a[i,j]=np.array([b,r,g])

4、把图片的色彩空间,从BGR,转化为LUV。z=cv2.cvtColor(img,cv2.COLOR_BGR2LUV)
5、把根据z里面的红色区域,来处理a:for i in range(u): for j in range(v): B,G,R=z[i,j] if max(B,G,R)==R and B>=G: a[i,j]=np.array([2*r,b,g]) elif max(B,G,R)==R and G>=B: a[i,j]=np.array([2*r,b,g])

6、改为集中处理。

