소스 검색

Colab up-to-date for new feature

Liu Ziang 3 년 전
부모
커밋
6224dfb915
2개의 변경된 파일19개의 추가작업 그리고 18개의 파일을 삭제
  1. 1 1
      MultiSpecific.ipynb
  2. 18 17
      SimSwap colab.ipynb

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 1
MultiSpecific.ipynb


+ 18 - 17
SimSwap colab.ipynb

@@ -395,6 +395,7 @@
         "opt.temp_path = './tmp'\n",
         "opt.Arc_path = './arcface_model/arcface_checkpoint.tar'\n",
         "opt.isTrain = False\n",
+        "opt.use_mask = True  ## new feature up-to-date\n",
         "\n",
         "crop_size = 224\n",
         "\n",
@@ -402,29 +403,29 @@
         "model = create_model(opt)\n",
         "model.eval()\n",
         "\n",
-        "\n",
         "app = Face_detect_crop(name='antelope', root='./insightface_func/models')\n",
         "app.prepare(ctx_id= 0, det_thresh=0.6, det_size=(640,640))\n",
         "\n",
-        "pic_a = opt.pic_a_path\n",
-        "# img_a = Image.open(pic_a).convert('RGB')\n",
-        "img_a_whole = cv2.imread(pic_a)\n",
-        "img_a_align_crop, _ = app.get(img_a_whole,crop_size)\n",
-        "img_a_align_crop_pil = Image.fromarray(cv2.cvtColor(img_a_align_crop[0],cv2.COLOR_BGR2RGB)) \n",
-        "img_a = transformer_Arcface(img_a_align_crop_pil)\n",
-        "img_id = img_a.view(-1, img_a.shape[0], img_a.shape[1], img_a.shape[2])\n",
+        "with torch.no_grad():\n",
+        "    pic_a = opt.pic_a_path\n",
+        "    # img_a = Image.open(pic_a).convert('RGB')\n",
+        "    img_a_whole = cv2.imread(pic_a)\n",
+        "    img_a_align_crop, _ = app.get(img_a_whole,crop_size)\n",
+        "    img_a_align_crop_pil = Image.fromarray(cv2.cvtColor(img_a_align_crop[0],cv2.COLOR_BGR2RGB)) \n",
+        "    img_a = transformer_Arcface(img_a_align_crop_pil)\n",
+        "    img_id = img_a.view(-1, img_a.shape[0], img_a.shape[1], img_a.shape[2])\n",
         "\n",
-        "# convert numpy to tensor\n",
-        "img_id = img_id.cuda()\n",
+        "    # convert numpy to tensor\n",
+        "    img_id = img_id.cuda()\n",
         "\n",
-        "#create latent id\n",
-        "img_id_downsample = F.interpolate(img_id, scale_factor=0.5)\n",
-        "latend_id = model.netArc(img_id_downsample)\n",
-        "latend_id = latend_id.detach().to('cpu')\n",
-        "latend_id = latend_id/np.linalg.norm(latend_id,axis=1,keepdims=True)\n",
-        "latend_id = latend_id.to('cuda')\n",
+        "    #create latent id\n",
+        "    img_id_downsample = F.interpolate(img_id, scale_factor=0.5)\n",
+        "    latend_id = model.netArc(img_id_downsample)\n",
+        "    latend_id = latend_id.detach().to('cpu')\n",
+        "    latend_id = latend_id/np.linalg.norm(latend_id,axis=1,keepdims=True)\n",
+        "    latend_id = latend_id.to('cuda')\n",
         "\n",
-        "video_swap(opt.video_path, latend_id, model, app, opt.output_path,temp_results_dir=opt.temp_path)"
+        "    video_swap(opt.video_path, latend_id, model, app, opt.output_path, temp_results_dir=opt.temp_path, use_mask=opt.use_mask)"
       ],
       "execution_count": 9,
       "outputs": [