提交 60e05c78 编写于 作者: W wizardforcel

2020-07-27 12:31:53

上级 1e415c47
......@@ -7,11 +7,15 @@ from os import path
import sys
def adathres_bts(img, win=9, beta=0.9):
img = cv2.imdecode(np.frombuffer(img, np.uint8), cv2.IMREAD_GRAYSCALE)
img = np.frombuffer(img, np.uint8)
img = cv2.imdecode(img, cv2.IMREAD_GRAYSCALE)
if img is None: return None
img = adathres(img, win, beta).astype(np.uint8)
img = bytes(cv2.imencode('.png', img, [cv2.IMWRITE_PNG_BILEVEL, 1])[1])
return img
img = cv2.imencode(
'.png', img,
[cv2.IMWRITE_PNG_BILEVEL, 1]
)[1]
return bytes(img)
def adathres(img, win=9, beta=0.9):
if win % 2 == 0: win = win - 1
......
......@@ -109,11 +109,15 @@ def grid(img):
return img
def grid_bts(img):
img = cv2.imdecode(np.frombuffer(img, np.uint8), cv2.IMREAD_GRAYSCALE)
img = np.frombuffer(img, np.uint8)
img = cv2.imdecode(img, cv2.IMREAD_GRAYSCALE)
if img is None: return None
img = grid(img).astype(np.uint8)
img = bytes(cv2.imencode('.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])[1])
return img
img = cv2.imencode(
'.png', img,
[cv2.IMWRITE_PNG_COMPRESSION, 9]
)[1]
return bytes(img)
def noise(img):
assert img.ndim == 2
......@@ -130,12 +134,15 @@ def noise(img):
return img
def noise_bts(img):
img = cv2.imdecode(np.frombuffer(img, np.uint8), cv2.IMREAD_GRAYSCALE)
img = np.frombuffer(img, np.uint8)
img = cv2.imdecode(img, cv2.IMREAD_GRAYSCALE)
if img is None: return None
img = noise(img).astype(np.uint8)
img = bytes(cv2.imencode('.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])[1])
return img
img = cv2.imencode(
'.png', img,
[cv2.IMWRITE_PNG_COMPRESSION, 9]
)[1]
return bytes(img)
def main():
fname = sys.argv[1]
......
......@@ -6,9 +6,14 @@ from io import BytesIO
from .util import *
def pngquant(img, ncolors=8):
img = bytes(cv2.imencode('.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])[1])
img = cv2.imencode(
'.png', img,
[cv2.IMWRITE_PNG_COMPRESSION, 9]
)[1]
img = bytes(img)
img = pngquant_bts(img, ncolors)
return cv2.imdecode(np.frombuffer(img, np.uint8), cv2.IMREAD_UNCHANGED)
img = np.frombuffer(img, np.uint8)
return cv2.imdecode(img, cv2.IMREAD_UNCHANGED)
def pngquant_bts(img, ncolors=8):
img = conv2png(img)
......
......@@ -3,11 +3,15 @@ import cv2
import numpy as np
def trunc_bts(img, l=4):
img = cv2.imdecode(np.frombuffer(img, np.uint8), cv2.IMREAD_GRAYSCALE)
img = np.frombuffer(img, np.uint8)
img = cv2.imdecode(img, cv2.IMREAD_GRAYSCALE)
if img is None: return None
img = trunc(img, l).astype(np.uint8)
img = bytes(cv2.imencode('.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])[1])
return img
img = cv2.imencode(
'.png', img,
[cv2.IMWRITE_PNG_COMPRESSION, 9]
)[1]
return bytes(img)
def trunc(img, l=4):
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册