Ejemplo n.º 1
0
def main():
    img = cv2.imread('Lenna.jpg', 3)
    print(img.shape)
    img = tr.RGB2YCBCR(img)
    Y, Cr, Cb = cv2.split(img)

    pathlib.Path('./SecondAttempt').mkdir(parents=True, exist_ok=True)

    (Sl, (Sh1, Sv1, Sd1), (Sh2, Sv2, Sd2)) = pywt.wavedec2(Y, 'db1', level=2)

    ReducedCb = downscale_local_mean(Cb, (2, 2))
    ReducedCr = downscale_local_mean(Cr, (2, 2))

    CbPlus = ReducedCb
    CbMinus = ReducedCb

    for i in range(0, ReducedCb.shape[0]):
        for j in range(0, ReducedCb.shape[1]):
            if ReducedCb[i, j] < 0:
                CbPlus[i, j] = 0
            elif ReducedCb[i, j] > 0:
                CbMinus[i, j] = 0

    CrPlus = ReducedCr
    CrMinus = ReducedCr

    for i in range(0, ReducedCr.shape[0]):
        for j in range(0, ReducedCr.shape[1]):
            if ReducedCr[i, j] < 0:
                CrPlus[i, j] = 0
            elif ReducedCb[i, j] > 0:
                CrMinus[i, j] = 0

    ReducedCbMinus = downscale_local_mean(CbMinus, (2, 2))

    # Sd1 = ReducedCbMinus
    # Sh2 = CrPlus
    # Sv2 = CbPlus
    # Sd2 = CrMinus

    NewYSecondTry = pywt.waverec2(
        (Sl, (Sh1, Sv1, ReducedCbMinus), (CrPlus, CbPlus, CrMinus)), 'db1')
    cv2.imwrite("./SecondAttempt/NewYSecondTry.jpg", NewYSecondTry)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    h = hf.Halftone('./SecondAttempt/NewYSecondTry.jpg')
    h.make(angles=[0, 15, 30, 45],
           antialias=True,
           percentage=10,
           sample=1,
           scale=2,
           style='grayscale')
Ejemplo n.º 2
-2
def main():

    img = cv2.imread('Lenna.jpg', 3)
    img = tr.RGB2YCBCR(img)
    Y, Cr, Cb = cv2.split(img)
    print(Y.shape)

    pathlib.Path('./FirstAttempt').mkdir(parents=True, exist_ok=True)
    cv2.imwrite("./FirstAttempt/OldY.jpg", Y)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    (Sl, (Sh, Sv, Sd)) = pywt.dwt2(Y, 'haar')

    ReducedCb = downscale_local_mean(Cb, (2, 2))
    ReducedCr = downscale_local_mean(Cr, (2, 2))

    # Sh = ReducedCb
    # Sv = ReducedCr

    NewY = pywt.idwt2((Sl, (ReducedCb, ReducedCr, Sd)), 'haar')

    cv2.imwrite("./FirstAttempt/NewYFirstTry.jpg", NewY)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    h = hf.Halftone('./FirstAttempt/NewYFirstTry.jpg')
    h.make(angles=[0, 15, 30, 45],
           antialias=True,
           percentage=10,
           sample=1,
           scale=2,
           style='grayscale')