gpt4 book ai didi

opencv - 过滤以从文档的彩色图像创建Xerox/影印图像

转载 作者:行者123 更新时间:2023-12-02 16:58:41 25 4
gpt4 key购买 nike

我有彩色的文档图像。样本输入
PAN card
(取自https://www.indiamart.com/proddetail/pan-card-21687536812.html)
我希望以此创建逼真的xerox /影印图像。大多数复印/复印设置为低调。
这是一个示例输出(示例输出不是示例输入的施乐-我在网上都找不到相同的图像)
enter image description here(取自http://shrikantmail7862.blogspot.com/2016/06/)
音符输出不是彩色图像的简单黑白。
我正在寻找一种工具/代码/算法来为我做这件事。我需要对超过0.1M的图像进行此操作
我确信图像处理中必须有这样的过滤器。寻找合适的指针

最佳答案

为了产生类似xerox的效果,一种方法是将图像转换为灰度,然后减少色彩空间。

def xeroxFilter(imgPath, colorSpaceReduction=8, rotate=False, fillColor=(255,255,255)):
'''Takes image as input and returns a xerox like image of the input image.
impPath: Name of Image(keep the images in the same folder as this script)
colorSpaceReduction: Reducing the color space. Higher the value, Higher the reduction.
rotate: Rotate to the image
fillColor: Specify the RGB value of the background color after roatation
'''
print("Original Image")
cv2_imshow(cv2.imread(imgPath))

print('GreyScale')
cv2_imshow(cv2.imread(imgPath, cv2.IMREAD_GRAYSCALE))

print('Color Space Reduced')
color_reduced_img = cv2.imread(imgPath, cv2.IMREAD_GRAYSCALE) // colorSpaceReduction * colorSpaceReduction + colorSpaceReduction // 2
cv2_imshow(color_reduced_img)
file_name = 'ColorSpaceReduced-'+imgPath.split('.')[0]+'.png'
cv2.imwrite(file_name, color_reduced_img)

if rotate:
print("Rotated")
img = Image.open(file_name)
rgb_img = Image.new("RGBA", img.size)
rgb_img.paste(img)
rotated_img = rgb_img.rotate(random.randint(-25,25), expand = 1, fillcolor = fillColor)
display(rotated_img)
rotated_img.save('Rotated-'+file_name)
print("Original Image")
cv2_imshow(cv2.imread(imgPath))

xeroxFilter('MCRV7.jpg', rotate=True)
减少色彩空间代码(记数 @elizer)
将第一个图像传递到脚本时的输出可以在下面找到:
[ 1

关于opencv - 过滤以从文档的彩色图像创建Xerox/影印图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63669117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com