-
#!/ binに/ Pythonの #ニキビ美白 インポートのNPとしてnumpyの 輸入CV2 デフbeauty_face(IMG): ''」 DEST =(SRC *(100 - 不透明度)+(SRC + 2 * GuassBlur(EPFFilter(SRC) - のSrc + 128) - 256)*不透明度)/ 100。 https://my.oschina.net/wujux/blog/1563461 「」」 DST = np.zeros_like(IMG) #。INT = VALUE1 3、値2 = 1;皮膚剥離度は、詳細のレベル決定 V1を3 = V2 = 1。 DX = V1 * 5つの。#1バイラテラルフィルタリングパラメータ FC = V1 * 12.5 #の両側一つのフィルタパラメータ P = 0.1 TEMP4 = np.zeros_like(IMG) TEMP1 = cv2.bilateralFilter(IMG、DX、FC、FC) TEMP2 = cv2.subtract(TEMP1、IMG) TEMP2 = cv2.add(TEMP2、(10,10,10,128 )) TEMP3 = cv2.GaussianBlur(TEMP2、(2 * V2 - * V2-1 1,2 )、0) TEMP4 = cv2.add(IMG、TEMP3) DST = cv2.addWeighted(IMG、P、temp4,1-P、0.0 ) DST = cv2.add(DST、(10、10、10255 )) 戻りDST デフbeauty_face2(SRC): ''」 DEST =(SRC *(100 - 不透明度)+(SRC + 2 * GuassBlur(EPFFilter(SRC) - のSrc + 128) - 256)*不透明度)/ 100。 「」」 DST = np.zeros_like(SRC) #INT = VALUE1 3、値2 = 1;皮膚剥離の程度は、詳細のレベル決定 V1を3 = V2 = 1。 DX = V1 * 5つの。#1バイラテラルフィルタリングパラメータを FC = V1 * 12.5 #両側一つのフィルタパラメータ P = 0.1 TEMP4 = np.zeros_like(SRC) TEMP1 = cv2.bilateralFilter(SRC、DX、FC、FC) TEMP2 = cv2.subtract(TEMP1、SRC) TEMP2 = cv2.add(TEMP2、(10,10,10,128 )) TEMP3 = cv2.GaussianBlur(TEMP2、(2 * V2 - * V2-1 1,2 )、0) TEMP4 = cv2.subtract(cv2.add(cv2.add(TEMP3、TEMP3)、SRC)、(10、10、10、255 )) DST = cv2.addWeighted(SRC、P、temp4,1-P、0.0 ) DST = cv2.add(DST、(10、10、10255 )) 戻りDST デフ)(INIT: IMG = cv2.imread(' あるtestimg.jpg ' ) #blur1 = cv2.GaussianBlur(IMG、(5,5)、0) #blur2 = cv2.bilateralFilter(IMG、9、75、75) blur3 = beauty_face(IMG) blur4 = beauty_face2(IMG) cv2.imshow(' image0 ' 、IMG) #1 cv2.imshow( '画像1'、blur1) #1 cv2.imshow( '画像2'、blur2) cv2.imshow(' 画像3 ' 、blur3) cv2.imshow(' のimage4 ' 、blur4) #Cv2.namedWindow( 'イメージ'、cv2.WINDOW_NORMAL) #のサイズcv2.resizeWindow( '画像' 1000、 1000)# 定義されたフレームの cv2.waitKey(0) cv2.imwrite(' result1.png ' 、blur3) cv2.imwrite(' result2.png ' 、blur4) cv2.destroyAllWindows() もし __name__ == " __main__ " : 初期化()
実験のレンダリング
オリジナル(唯一のアルゴリズム実験侵害接触のために、著者は削除)、beauty_face
および beauty_face2
以下のようにコントラスト:
-