import numpy as np
import cv2 as cv,os,cv2
from PIL import Image
import pytesseract
# 绘图展示
def cv_show(name,img):
cv2.imshow(name, img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 读取一个模板图像
def alpha2white_opencv2(img):
sp=img.shape
width=sp[0]
height=sp[1]
for yh in range(height):
for xw in range(width):
color_d=img[xw,yh]
if(color_d[3]==0):
img[xw,yh]=[255,255,255,255]
return img
def alphabg2white_PIL(img):
img=img.convert('RGBA')
sp=img.size
width=sp[0]
height=sp[1]
for yh in range(height):
for xw in range(width):
dot=(xw,yh)
color_d=img.getpixel(dot)
if(color_d[3]==0):
color_d=(255,255,255,255)
img.putpixel(dot,color_d)
return img
if __name__ == '__main__':
src_path = r'./src/'
dest_path = r'./dest/'
fileList = os.listdir(src_path)
for name in fileList:
img = cv2.imread(src_path+name,-1)
img_copy=img.copy()
whiteback=alpha2white_opencv2(img_copy)
cv_show('img',whiteback)
new = input("please input:")
while len(new) != 6:
cv_show('img',whiteback)
new = input("please input:")
pre,end = name.split('_')
new_name = new.upper()+'_'+end
print(new_name)
cv2.imwrite(dest_path+new_name, whiteback)
os.remove(src_path+name)
#opencv转化bgr
src_path = r'./src/'
dest_path = r'./dest/'
fileList = os.listdir(src_path)
for name in fileList:
img = cv2.imread(src_path+name,-1)
whiteback=alpha2white_opencv2(img)
pre,end = name.split('.')
new_name = pre+'.'+end.lower()
cv2.imwrite(dest_path+new_name, whiteback)
#PIL转换bgr
src_path = r'./src/'
dest_path = r'./dest/'
fileList = os.listdir(src_path)
for name in fileList:
img = Image.open(src_path+name)
whiteback=alphabg2white_PIL(img)
pre,end = name.split('.')
new_name = pre+'.'+end.lower()
whiteback.save(dest_path+new_name)
#测试
file = r'C:\Users\Administrator\Desktop\api\dest\3H6LB7_15989252796280265.png'
img = cv2.imread(file)
cv_show('img',img)
img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
print(img.shape)
cv_show('img',img)
验证码a透明图层处理
最新推荐文章于 2023-09-26 10:46:15 发布