diff --git a/README.md b/README.md index fcef9d4..39aba89 100644 --- a/README.md +++ b/README.md @@ -29,17 +29,23 @@ More than 95% of deepfake videos are created with DeepFaceLab. DeepFaceLab is used by such popular youtube channels as +|![](doc/tiktok_icon.png) [deeptomcruise](https://www.tiktok.com/@deeptomcruise)| +|---| + |![](doc/youtube_icon.png) [Ctrl Shift Face](https://www.youtube.com/channel/UCKpH0CKltc73e4wh0_pgL3g)|![](doc/youtube_icon.png) [VFXChris Ume](https://www.youtube.com/channel/UCGf4OlX_aTt8DlrgiH3jN3g/videos)|![](doc/youtube_icon.png) [Sham00k](https://www.youtube.com/channel/UCZXbWcv7fSZFTAZV4beckyw/videos)| |---|---|---| |![](doc/youtube_icon.png) [Collider videos](https://www.youtube.com/watch?v=A91P2qtPT54&list=PLayt6616lBclvOprvrC8qKGCO-mAhPRux)|![](doc/youtube_icon.png) [iFake](https://www.youtube.com/channel/UCC0lK2Zo2BMXX-k1Ks0r7dg/videos)|![](doc/youtube_icon.png) [NextFace](https://www.youtube.com/channel/UCFh3gL0a8BS21g-DHvXZEeQ/videos)| |---|---|---| -|![](doc/youtube_icon.png) [Futuring Machine](https://www.youtube.com/channel/UCC5BbFxqLQgfnWPhprmQLVg)|![](doc/youtube_icon.png) [RepresentUS](https://www.youtube.com/channel/UCRzgK52MmetD9aG8pDOID3g)| +|![](doc/youtube_icon.png) [Futuring Machine](https://www.youtube.com/channel/UCC5BbFxqLQgfnWPhprmQLVg)|![](doc/youtube_icon.png) [RepresentUS](https://www.youtube.com/channel/UCRzgK52MmetD9aG8pDOID3g)|![](doc/youtube_icon.png) [Corridor Crew](https://www.youtube.com/c/corridorcrew/videos)| +|---|---|---| + +|![](doc/youtube_icon.png) [DeepFaker](https://www.youtube.com/channel/UCkHecfDTcSazNZSKPEhtPVQ)|![](doc/youtube_icon.png) [DeepFakes in movie](https://www.youtube.com/c/DeepFakesinmovie/videos)| |---|---| -|![](doc/youtube_icon.png) [DeepFakeCreator](https://www.youtube.com/channel/UCkNFhcYNLQ5hr6A6lZ56mKA)|![](doc/youtube_icon.png) [DeepFaker](https://www.youtube.com/channel/UCkHecfDTcSazNZSKPEhtPVQ)|![](doc/youtube_icon.png) [DeepFakes in movie](https://www.youtube.com/c/DeepFakesinmovie/videos)| -|---|---|---| +|![](doc/youtube_icon.png) [DeepFakeCreator](https://www.youtube.com/channel/UCkNFhcYNLQ5hr6A6lZ56mKA)|![](doc/youtube_icon.png) [Jarkan](https://www.youtube.com/user/Jarkancio/videos)| +|---|---| @@ -144,12 +150,6 @@ DeepFaceLab is used by such popular youtube channels as (voice replacement is not included!) (also requires a skill in video editors such as *Adobe After Effects* or *Davinci Resolve*) - - - -![](doc/youtube_icon.png) https://www.youtube.com/watch?v=rYKkQ3BOo_E - - ![](doc/youtube_icon.png) https://www.youtube.com/watch?v=IvY-Abd2FfM @@ -269,27 +269,18 @@ Unfortunately, there is no "make everything ok" button in DeepFaceLab. You shoul + +Discord +Official discord channel. English / Russian. -Discord channel (English / Русский) +Telegram group +Official telegram group. English / Russian. For anonymous communication. Don't forget to hide your phone number + + +Русский форум - -reddit r/RUdeepfakes/ -Постим русские дипфейки сюда ! - - -Русское сообщество - - - -telegram (English / Русский) -Don't forget to hide your phone number - - -telegram (English only) -Don't forget to hide your phone number - mrdeepfakes the biggest NSFW English community @@ -298,6 +289,10 @@ Unfortunately, there is no "make everything ok" button in DeepFaceLab. You shoul reddit r/DeepFakesSFW/ Post your deepfakes there ! + +reddit r/RUdeepfakes/ +Постим русские дипфейки сюда ! + QQ 951138799 中文 Chinese QQ group for ML/AI experts @@ -392,10 +387,25 @@ Register github account and push "Star" button. + + +## You don't need deepfake detector. You need to stop lying. + + + + + + + +V.I. Lenin + + #deepfacelab #deepfakes #faceswap #face-swap #deep-learning #deeplearning #deep-neural-networks #deepface #deep-face-swap #fakeapp #fake-app #neural-networks #neural-nets #tensorflow #cuda #nvidia + + diff --git a/doc/tiktok_icon.png b/doc/tiktok_icon.png new file mode 100644 index 0000000..63d3e7e Binary files /dev/null and b/doc/tiktok_icon.png differ diff --git a/merger/MergeMasked.py b/merger/MergeMasked.py index 1100ab2..1d3de4a 100644 --- a/merger/MergeMasked.py +++ b/merger/MergeMasked.py @@ -142,7 +142,7 @@ def MergeMaskedFace (predictor_func, predictor_input_shape, elif 'raw' in cfg.mode: if cfg.mode == 'raw-rgb': - out_img = cv2.warpAffine( prd_face_bgr, face_output_mat, img_size, img_bgr.copy(), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC, cv2.BORDER_TRANSPARENT ) + out_img = cv2.warpAffine( prd_face_bgr, face_output_mat, img_size, img_bgr.copy(), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC ) out_merging_mask_a = img_face_mask_a elif cfg.mode == 'raw-predict': out_img = prd_face_bgr @@ -214,7 +214,7 @@ def MergeMaskedFace (predictor_func, predictor_input_shape, img_face_seamless_mask_a[img_face_seamless_mask_a <= i / 10.0] = 0.0 break - out_img = cv2.warpAffine( prd_face_bgr, face_output_mat, img_size, np.empty_like(img_bgr), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC, cv2.BORDER_TRANSPARENT ) + out_img = cv2.warpAffine( prd_face_bgr, face_output_mat, img_size, np.empty_like(img_bgr), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC ) out_img = np.clip(out_img, 0.0, 1.0) if 'seamless' in cfg.mode: @@ -297,7 +297,7 @@ def MergeMaskedFace (predictor_func, predictor_input_shape, img_bgr_downscaled = cv2.resize (img_bgr, ( int(img_size[0]*p), int(img_size[1]*p ) ), interpolation=cv2.INTER_CUBIC) img_bgr = cv2.resize (img_bgr_downscaled, img_size, interpolation=cv2.INTER_CUBIC) - new_out = cv2.warpAffine( out_face_bgr, face_mat, img_size, np.empty_like(img_bgr), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC, cv2.BORDER_TRANSPARENT ) + new_out = cv2.warpAffine( out_face_bgr, face_mat, img_size, np.empty_like(img_bgr), cv2.WARP_INVERSE_MAP | cv2.INTER_CUBIC ) out_img = np.clip( img_bgr*(1-img_face_mask_a) + (new_out*img_face_mask_a) , 0, 1.0 )