├── requirements.txt ├── samples ├── A_landmark │ └── example │ │ ├── timg.txt │ │ ├── WechatIMG256.txt │ │ ├── WechatIMG260.txt │ │ ├── WechatIMG261.txt │ │ ├── WechatIMG262.txt │ │ ├── WechatIMG263.txt │ │ ├── w_sexy_gr.txt │ │ ├── WechatIMG253_2.txt │ │ ├── girl-2099354_1920.txt │ │ ├── girl-2099357_1920.txt │ │ ├── girl-2122909_1920.txt │ │ ├── girl-2122927_1280.txt │ │ ├── girl-2128294_1920.txt │ │ ├── girl-2132171_1920.txt │ │ ├── girl-2143709_1920.txt │ │ ├── girl-2164409_1920.txt │ │ ├── girl-2177360_1920.txt │ │ ├── girl-2720476_1920.txt │ │ ├── girl-2999078_1920.txt │ │ ├── girl-4024238_1920.txt │ │ ├── girl-4024240_1920.txt │ │ ├── girl-4024244_1920.txt │ │ ├── male-467711_1920.txt │ │ ├── own-2553537_1280.txt │ │ ├── young-507297_1920.txt │ │ ├── brazil-1368806_1920.txt │ │ ├── garden-2768329_1920.txt │ │ ├── model-2134460_1920.txt │ │ ├── model-2911329_1920.txt │ │ ├── model-2911332_1920.txt │ │ ├── pinky-2727846_1920.txt │ │ ├── pinky-2727874_1920.txt │ │ ├── portrait-2164027_1920.txt │ │ ├── portrait-2554431_1920.txt │ │ ├── fconrad_Portrait_060414a.txt │ │ ├── mid-autumn-2752710_1920.txt │ │ ├── portrait-smiling-woman-blue-shirt-450w-218101459.txt │ │ ├── passport-picture-businesswoman-brown-hair-450w-250775908.txt │ │ └── portrait-laughing-businesswoman-long-dark-450w-235195312.txt ├── A │ └── example │ │ ├── timg.png │ │ ├── w_sexy_gr.png │ │ ├── WechatIMG256.png │ │ ├── WechatIMG260.png │ │ ├── WechatIMG261.png │ │ ├── WechatIMG262.png │ │ ├── WechatIMG263.png │ │ ├── WechatIMG253_2.png │ │ ├── girl-2099354_1920.png │ │ ├── girl-2099357_1920.png │ │ ├── girl-2122909_1920.png │ │ ├── girl-2122927_1280.png │ │ ├── girl-2128294_1920.png │ │ ├── girl-2132171_1920.png │ │ ├── girl-2143709_1920.png │ │ ├── girl-2164409_1920.png │ │ ├── girl-2177360_1920.png │ │ ├── girl-2720476_1920.png │ │ ├── girl-2999078_1920.png │ │ ├── girl-4024238_1920.png │ │ ├── girl-4024240_1920.png │ │ ├── girl-4024244_1920.png │ │ ├── male-467711_1920.png │ │ ├── own-2553537_1280.png │ │ ├── young-507297_1920.png │ │ ├── brazil-1368806_1920.png │ │ ├── garden-2768329_1920.png │ │ ├── model-2134460_1920.png │ │ ├── model-2911329_1920.png │ │ ├── model-2911332_1920.png │ │ ├── pinky-2727846_1920.png │ │ ├── pinky-2727874_1920.png │ │ ├── portrait-2164027_1920.png │ │ ├── portrait-2554431_1920.png │ │ ├── fconrad_Portrait_060414a.png │ │ ├── mid-autumn-2752710_1920.png │ │ ├── portrait-smiling-woman-blue-shirt-450w-218101459.png │ │ ├── passport-picture-businesswoman-brown-hair-450w-250775908.png │ │ └── portrait-laughing-businesswoman-long-dark-450w-235195312.png └── A_mask │ └── example │ ├── timg.png │ ├── w_sexy_gr.png │ ├── WechatIMG256.png │ ├── WechatIMG260.png │ ├── WechatIMG261.png │ ├── WechatIMG262.png │ ├── WechatIMG263.png │ ├── WechatIMG253_2.png │ ├── girl-2099354_1920.png │ ├── girl-2099357_1920.png │ ├── girl-2122909_1920.png │ ├── girl-2122927_1280.png │ ├── girl-2128294_1920.png │ ├── girl-2132171_1920.png │ ├── girl-2143709_1920.png │ ├── girl-2164409_1920.png │ ├── girl-2177360_1920.png │ ├── girl-2720476_1920.png │ ├── girl-2999078_1920.png │ ├── girl-4024238_1920.png │ ├── girl-4024240_1920.png │ ├── girl-4024244_1920.png │ ├── male-467711_1920.png │ ├── own-2553537_1280.png │ ├── young-507297_1920.png │ ├── brazil-1368806_1920.png │ ├── garden-2768329_1920.png │ ├── model-2134460_1920.png │ ├── model-2911329_1920.png │ ├── model-2911332_1920.png │ ├── pinky-2727846_1920.png │ ├── pinky-2727874_1920.png │ ├── portrait-2164027_1920.png │ ├── portrait-2554431_1920.png │ ├── fconrad_Portrait_060414a.png │ ├── mid-autumn-2752710_1920.png │ ├── portrait-smiling-woman-blue-shirt-450w-218101459.png │ ├── passport-picture-businesswoman-brown-hair-450w-250775908.png │ └── portrait-laughing-businesswoman-long-dark-450w-235195312.png ├── preprocess ├── example │ ├── img_1701_aligned.txt │ ├── img_1701.jpg │ ├── img_1701_aligned.png │ ├── img_1701_facial5point.mat │ └── img_1701_aligned_bgmask.png ├── face_align_512.m ├── combine_A_and_B.py └── readme.md ├── imgs ├── architecture.png └── samples │ ├── img_1673.png │ ├── img_1682.png │ ├── img_1696.png │ ├── img_1701.png │ ├── img_1794.png │ ├── img_1673_fake_B.png │ ├── img_1682_fake_B.png │ ├── img_1696_fake_B.png │ ├── img_1701_fake_B.png │ └── img_1794_fake_B.png ├── .gitignore ├── utils.py ├── readme.md ├── test.py ├── models.py ├── datasets.py └── apdrawing_gan.py /requirements.txt: -------------------------------------------------------------------------------- 1 | jittor==1.2.2.58 2 | opencv-python==4.2.0.34 3 | numpy==1.19.4 4 | Pillow==7.2.0 -------------------------------------------------------------------------------- /samples/A_landmark/example/timg.txt: -------------------------------------------------------------------------------- 1 | 205 240 2 | 313 241 3 | 240 329 4 | 217 367 5 | 305 370 6 | -------------------------------------------------------------------------------- /preprocess/example/img_1701_aligned.txt: -------------------------------------------------------------------------------- 1 | 194 248 2 | 314 249 3 | 261 312 4 | 209 368 5 | 302 371 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG256.txt: -------------------------------------------------------------------------------- 1 | 199 246 2 | 313 247 3 | 255 317 4 | 207 369 5 | 306 368 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG260.txt: -------------------------------------------------------------------------------- 1 | 195 247 2 | 316 246 3 | 259 314 4 | 212 371 5 | 298 370 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG261.txt: -------------------------------------------------------------------------------- 1 | 196 246 2 | 310 247 3 | 267 316 4 | 204 370 5 | 302 368 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG262.txt: -------------------------------------------------------------------------------- 1 | 191 245 2 | 319 246 3 | 258 330 4 | 208 363 5 | 303 363 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG263.txt: -------------------------------------------------------------------------------- 1 | 199 242 2 | 318 244 3 | 241 329 4 | 217 364 5 | 306 368 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/w_sexy_gr.txt: -------------------------------------------------------------------------------- 1 | 200 245 2 | 312 245 3 | 256 316 4 | 210 371 5 | 302 371 6 | -------------------------------------------------------------------------------- /imgs/architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/architecture.png -------------------------------------------------------------------------------- /samples/A_landmark/example/WechatIMG253_2.txt: -------------------------------------------------------------------------------- 1 | 197 248 2 | 316 247 3 | 254 324 4 | 204 363 5 | 310 365 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2099354_1920.txt: -------------------------------------------------------------------------------- 1 | 200 247 2 | 316 244 3 | 253 313 4 | 213 372 5 | 299 371 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2099357_1920.txt: -------------------------------------------------------------------------------- 1 | 200 243 2 | 312 245 3 | 254 315 4 | 214 372 5 | 299 372 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2122909_1920.txt: -------------------------------------------------------------------------------- 1 | 197 242 2 | 310 243 3 | 267 317 4 | 213 373 5 | 293 372 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2122927_1280.txt: -------------------------------------------------------------------------------- 1 | 202 245 2 | 315 247 3 | 241 316 4 | 213 368 5 | 309 371 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2128294_1920.txt: -------------------------------------------------------------------------------- 1 | 195 246 2 | 311 247 3 | 266 320 4 | 204 367 5 | 303 368 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2132171_1920.txt: -------------------------------------------------------------------------------- 1 | 195 247 2 | 309 247 3 | 275 321 4 | 198 367 5 | 304 365 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2143709_1920.txt: -------------------------------------------------------------------------------- 1 | 201 245 2 | 312 244 3 | 255 308 4 | 215 375 5 | 296 375 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2164409_1920.txt: -------------------------------------------------------------------------------- 1 | 199 245 2 | 313 246 3 | 254 326 4 | 205 364 5 | 309 366 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2177360_1920.txt: -------------------------------------------------------------------------------- 1 | 197 248 2 | 316 249 3 | 253 321 4 | 201 365 5 | 311 363 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2720476_1920.txt: -------------------------------------------------------------------------------- 1 | 194 249 2 | 317 247 3 | 260 326 4 | 201 363 5 | 308 362 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-2999078_1920.txt: -------------------------------------------------------------------------------- 1 | 198 249 2 | 315 251 3 | 250 326 4 | 196 360 5 | 320 361 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-4024238_1920.txt: -------------------------------------------------------------------------------- 1 | 197 251 2 | 310 249 3 | 268 321 4 | 192 363 5 | 313 363 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-4024240_1920.txt: -------------------------------------------------------------------------------- 1 | 197 249 2 | 310 248 3 | 270 326 4 | 192 364 5 | 311 360 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/girl-4024244_1920.txt: -------------------------------------------------------------------------------- 1 | 197 250 2 | 313 249 3 | 261 327 4 | 193 361 5 | 315 361 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/male-467711_1920.txt: -------------------------------------------------------------------------------- 1 | 201 249 2 | 313 247 3 | 253 312 4 | 206 369 5 | 308 370 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/own-2553537_1280.txt: -------------------------------------------------------------------------------- 1 | 196 248 2 | 314 250 3 | 257 319 4 | 201 364 5 | 312 366 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/young-507297_1920.txt: -------------------------------------------------------------------------------- 1 | 205 249 2 | 314 246 3 | 244 310 4 | 208 372 5 | 308 370 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/brazil-1368806_1920.txt: -------------------------------------------------------------------------------- 1 | 199 246 2 | 313 246 3 | 254 316 4 | 210 369 5 | 303 370 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/garden-2768329_1920.txt: -------------------------------------------------------------------------------- 1 | 197 249 2 | 311 248 3 | 269 326 4 | 192 364 5 | 311 360 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/model-2134460_1920.txt: -------------------------------------------------------------------------------- 1 | 201 246 2 | 317 246 3 | 242 311 4 | 217 372 5 | 303 372 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/model-2911329_1920.txt: -------------------------------------------------------------------------------- 1 | 199 246 2 | 309 247 3 | 263 316 4 | 203 368 5 | 306 370 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/model-2911332_1920.txt: -------------------------------------------------------------------------------- 1 | 200 244 2 | 310 244 3 | 260 317 4 | 210 369 5 | 301 372 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/pinky-2727846_1920.txt: -------------------------------------------------------------------------------- 1 | 196 249 2 | 317 250 3 | 254 331 4 | 196 359 5 | 317 359 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/pinky-2727874_1920.txt: -------------------------------------------------------------------------------- 1 | 206 244 2 | 316 247 3 | 231 326 4 | 211 365 5 | 316 366 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/portrait-2164027_1920.txt: -------------------------------------------------------------------------------- 1 | 198 250 2 | 315 250 3 | 252 325 4 | 197 361 5 | 318 362 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/portrait-2554431_1920.txt: -------------------------------------------------------------------------------- 1 | 198 250 2 | 315 250 3 | 256 318 4 | 198 366 5 | 313 362 6 | -------------------------------------------------------------------------------- /imgs/samples/img_1673.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1673.png -------------------------------------------------------------------------------- /imgs/samples/img_1682.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1682.png -------------------------------------------------------------------------------- /imgs/samples/img_1696.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1696.png -------------------------------------------------------------------------------- /imgs/samples/img_1701.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1701.png -------------------------------------------------------------------------------- /imgs/samples/img_1794.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1794.png -------------------------------------------------------------------------------- /samples/A/example/timg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/timg.png -------------------------------------------------------------------------------- /samples/A_landmark/example/fconrad_Portrait_060414a.txt: -------------------------------------------------------------------------------- 1 | 200 250 2 | 309 251 3 | 259 307 4 | 199 368 5 | 312 371 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/mid-autumn-2752710_1920.txt: -------------------------------------------------------------------------------- 1 | 201 247 2 | 316 250 3 | 243 325 4 | 201 362 5 | 319 363 6 | -------------------------------------------------------------------------------- /imgs/samples/img_1673_fake_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1673_fake_B.png -------------------------------------------------------------------------------- /imgs/samples/img_1682_fake_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1682_fake_B.png -------------------------------------------------------------------------------- /imgs/samples/img_1696_fake_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1696_fake_B.png -------------------------------------------------------------------------------- /imgs/samples/img_1701_fake_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1701_fake_B.png -------------------------------------------------------------------------------- /imgs/samples/img_1794_fake_B.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/imgs/samples/img_1794_fake_B.png -------------------------------------------------------------------------------- /preprocess/example/img_1701.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/preprocess/example/img_1701.jpg -------------------------------------------------------------------------------- /samples/A/example/w_sexy_gr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/w_sexy_gr.png -------------------------------------------------------------------------------- /samples/A_mask/example/timg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/timg.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG256.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG260.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG260.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG261.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG261.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG262.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG262.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG263.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG263.png -------------------------------------------------------------------------------- /samples/A/example/WechatIMG253_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/WechatIMG253_2.png -------------------------------------------------------------------------------- /samples/A_mask/example/w_sexy_gr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/w_sexy_gr.png -------------------------------------------------------------------------------- /preprocess/example/img_1701_aligned.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/preprocess/example/img_1701_aligned.png -------------------------------------------------------------------------------- /samples/A/example/girl-2099354_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2099354_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2099357_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2099357_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2122909_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2122909_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2122927_1280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2122927_1280.png -------------------------------------------------------------------------------- /samples/A/example/girl-2128294_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2128294_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2132171_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2132171_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2143709_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2143709_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2164409_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2164409_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2177360_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2177360_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2720476_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2720476_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-2999078_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-2999078_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-4024238_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-4024238_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-4024240_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-4024240_1920.png -------------------------------------------------------------------------------- /samples/A/example/girl-4024244_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/girl-4024244_1920.png -------------------------------------------------------------------------------- /samples/A/example/male-467711_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/male-467711_1920.png -------------------------------------------------------------------------------- /samples/A/example/own-2553537_1280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/own-2553537_1280.png -------------------------------------------------------------------------------- /samples/A/example/young-507297_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/young-507297_1920.png -------------------------------------------------------------------------------- /samples/A_landmark/example/portrait-smiling-woman-blue-shirt-450w-218101459.txt: -------------------------------------------------------------------------------- 1 | 195 245 2 | 315 247 3 | 258 331 4 | 202 362 5 | 309 362 6 | -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG256.png -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG260.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG260.png -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG261.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG261.png -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG262.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG262.png -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG263.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG263.png -------------------------------------------------------------------------------- /samples/A/example/brazil-1368806_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/brazil-1368806_1920.png -------------------------------------------------------------------------------- /samples/A/example/garden-2768329_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/garden-2768329_1920.png -------------------------------------------------------------------------------- /samples/A/example/model-2134460_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/model-2134460_1920.png -------------------------------------------------------------------------------- /samples/A/example/model-2911329_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/model-2911329_1920.png -------------------------------------------------------------------------------- /samples/A/example/model-2911332_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/model-2911332_1920.png -------------------------------------------------------------------------------- /samples/A/example/pinky-2727846_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/pinky-2727846_1920.png -------------------------------------------------------------------------------- /samples/A/example/pinky-2727874_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/pinky-2727874_1920.png -------------------------------------------------------------------------------- /samples/A_landmark/example/passport-picture-businesswoman-brown-hair-450w-250775908.txt: -------------------------------------------------------------------------------- 1 | 196 251 2 | 315 253 3 | 256 320 4 | 194 361 5 | 319 361 6 | -------------------------------------------------------------------------------- /samples/A_landmark/example/portrait-laughing-businesswoman-long-dark-450w-235195312.txt: -------------------------------------------------------------------------------- 1 | 198 251 2 | 314 251 3 | 256 319 4 | 196 364 5 | 316 363 6 | -------------------------------------------------------------------------------- /samples/A_mask/example/WechatIMG253_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/WechatIMG253_2.png -------------------------------------------------------------------------------- /preprocess/example/img_1701_facial5point.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/preprocess/example/img_1701_facial5point.mat -------------------------------------------------------------------------------- /samples/A/example/portrait-2164027_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/portrait-2164027_1920.png -------------------------------------------------------------------------------- /samples/A/example/portrait-2554431_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/portrait-2554431_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2099354_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2099354_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2099357_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2099357_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2122909_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2122909_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2122927_1280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2122927_1280.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2128294_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2128294_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2132171_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2132171_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2143709_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2143709_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2164409_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2164409_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2177360_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2177360_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2720476_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2720476_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-2999078_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-2999078_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-4024238_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-4024238_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-4024240_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-4024240_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/girl-4024244_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/girl-4024244_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/male-467711_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/male-467711_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/own-2553537_1280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/own-2553537_1280.png -------------------------------------------------------------------------------- /samples/A_mask/example/young-507297_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/young-507297_1920.png -------------------------------------------------------------------------------- /preprocess/example/img_1701_aligned_bgmask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/preprocess/example/img_1701_aligned_bgmask.png -------------------------------------------------------------------------------- /samples/A/example/fconrad_Portrait_060414a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/fconrad_Portrait_060414a.png -------------------------------------------------------------------------------- /samples/A/example/mid-autumn-2752710_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/mid-autumn-2752710_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/brazil-1368806_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/brazil-1368806_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/garden-2768329_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/garden-2768329_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/model-2134460_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/model-2134460_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/model-2911329_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/model-2911329_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/model-2911332_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/model-2911332_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/pinky-2727846_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/pinky-2727846_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/pinky-2727874_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/pinky-2727874_1920.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | */*.pyc 2 | */**/*.pyc 3 | */**/**/*.pyc 4 | */**/**/**/*.pyc 5 | */**/**/**/**/*.pyc 6 | checkpoints/ 7 | data/ 8 | images/ 9 | results/ 10 | -------------------------------------------------------------------------------- /samples/A_mask/example/portrait-2164027_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/portrait-2164027_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/portrait-2554431_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/portrait-2554431_1920.png -------------------------------------------------------------------------------- /samples/A_mask/example/fconrad_Portrait_060414a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/fconrad_Portrait_060414a.png -------------------------------------------------------------------------------- /samples/A_mask/example/mid-autumn-2752710_1920.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/mid-autumn-2752710_1920.png -------------------------------------------------------------------------------- /samples/A/example/portrait-smiling-woman-blue-shirt-450w-218101459.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/portrait-smiling-woman-blue-shirt-450w-218101459.png -------------------------------------------------------------------------------- /samples/A_mask/example/portrait-smiling-woman-blue-shirt-450w-218101459.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/portrait-smiling-woman-blue-shirt-450w-218101459.png -------------------------------------------------------------------------------- /samples/A/example/passport-picture-businesswoman-brown-hair-450w-250775908.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/passport-picture-businesswoman-brown-hair-450w-250775908.png -------------------------------------------------------------------------------- /samples/A/example/portrait-laughing-businesswoman-long-dark-450w-235195312.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A/example/portrait-laughing-businesswoman-long-dark-450w-235195312.png -------------------------------------------------------------------------------- /samples/A_mask/example/passport-picture-businesswoman-brown-hair-450w-250775908.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/passport-picture-businesswoman-brown-hair-450w-250775908.png -------------------------------------------------------------------------------- /samples/A_mask/example/portrait-laughing-businesswoman-long-dark-450w-235195312.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yiranran/APDrawingGAN-Jittor/HEAD/samples/A_mask/example/portrait-laughing-businesswoman-long-dark-450w-235195312.png -------------------------------------------------------------------------------- /preprocess/face_align_512.m: -------------------------------------------------------------------------------- 1 | function [trans_img,trans_facial5point]=face_align_512(impath,facial5point,savedir) 2 | % align the faces by similarity transformation. 3 | % using 5 facial landmarks: 2 eyes, nose, 2 mouth corners. 4 | % impath: path to image 5 | % facial5point: 5x2 size, 5 facial landmark positions, detected by MTCNN 6 | % savedir: savedir for cropped image and transformed facial landmarks 7 | 8 | %% alignment settings 9 | imgSize = [512,512]; 10 | coord5point = [180,230; 11 | 300,230; 12 | 240,301; 13 | 186,365.6; 14 | 294,365.6];%480x480 15 | coord5point = (coord5point-240)/560 * 512 + 256; 16 | 17 | %% face alignment 18 | 19 | % load and align, resize image to imgSize 20 | img = imread(impath); 21 | facial5point = double(facial5point); 22 | transf = cp2tform(facial5point, coord5point, 'similarity'); 23 | trans_img = imtransform(img, transf, 'XData', [1 imgSize(2)],... 24 | 'YData', [1 imgSize(1)],... 25 | 'Size', imgSize,... 26 | 'FillValues', [255;255;255]); 27 | trans_facial5point = round(tformfwd(transf,facial5point)); 28 | 29 | 30 | %% save results 31 | if ~exist(savedir,'dir') 32 | mkdir(savedir) 33 | end 34 | [~,name,~] = fileparts(impath); 35 | % save trans_img 36 | imwrite(trans_img, fullfile(savedir,[name,'_aligned.png'])); 37 | fprintf('write aligned image to %s\n',fullfile(savedir,[name,'_aligned.png'])); 38 | % save trans_facial5point 39 | write_5pt(fullfile(savedir, [name, '_aligned.txt']), trans_facial5point); 40 | fprintf('write transformed facial landmark to %s\n',fullfile(savedir,[name,'_aligned.txt'])); 41 | 42 | %% show results 43 | imshow(trans_img); hold on; 44 | plot(trans_facial5point(:,1),trans_facial5point(:,2),'b'); 45 | plot(trans_facial5point(:,1),trans_facial5point(:,2),'r+'); 46 | 47 | end 48 | 49 | function [] = write_5pt(fn, trans_pt) 50 | fid = fopen(fn, 'w'); 51 | for i = 1:5 52 | fprintf(fid, '%d %d\n', trans_pt(i,1), trans_pt(i,2));%will be read as np.int32 53 | end 54 | fclose(fid); 55 | end -------------------------------------------------------------------------------- /preprocess/combine_A_and_B.py: -------------------------------------------------------------------------------- 1 | import os 2 | import numpy as np 3 | import cv2 4 | import argparse 5 | 6 | parser = argparse.ArgumentParser('create image pairs') 7 | parser.add_argument('--fold_A', dest='fold_A', help='input directory for image A', type=str, default='../dataset/50kshoes_edges') 8 | parser.add_argument('--fold_B', dest='fold_B', help='input directory for image B', type=str, default='../dataset/50kshoes_jpg') 9 | parser.add_argument('--fold_AB', dest='fold_AB', help='output directory', type=str, default='../dataset/test_AB') 10 | parser.add_argument('--num_imgs', dest='num_imgs', help='number of images',type=int, default=1000000) 11 | parser.add_argument('--use_AB', dest='use_AB', help='if true: (0001_A, 0001_B) to (0001_AB)',action='store_true') 12 | args = parser.parse_args() 13 | 14 | for arg in vars(args): 15 | print('[%s] = ' % arg, getattr(args, arg)) 16 | 17 | splits = os.listdir(args.fold_A) 18 | 19 | for sp in splits: 20 | img_fold_A = os.path.join(args.fold_A, sp) 21 | img_fold_B = os.path.join(args.fold_B, sp) 22 | img_list = os.listdir(img_fold_A) 23 | if args.use_AB: 24 | img_list = [img_path for img_path in img_list if '_A.' in img_path] 25 | 26 | num_imgs = min(args.num_imgs, len(img_list)) 27 | print('split = %s, use %d/%d images' % (sp, num_imgs, len(img_list))) 28 | img_fold_AB = os.path.join(args.fold_AB, sp) 29 | if not os.path.isdir(img_fold_AB): 30 | os.makedirs(img_fold_AB) 31 | print('split = %s, number of images = %d' % (sp, num_imgs)) 32 | for n in range(num_imgs): 33 | name_A = img_list[n] 34 | path_A = os.path.join(img_fold_A, name_A) 35 | if args.use_AB: 36 | name_B = name_A.replace('_A.', '_B.') 37 | else: 38 | name_B = name_A 39 | path_B = os.path.join(img_fold_B, name_B) 40 | if os.path.isfile(path_A) and os.path.isfile(path_B): 41 | name_AB = name_A 42 | if args.use_AB: 43 | name_AB = name_AB.replace('_A.', '.') # remove _A 44 | path_AB = os.path.join(img_fold_AB, name_AB) 45 | im_A = cv2.imread(path_A, cv2.IMREAD_COLOR) 46 | im_B = cv2.imread(path_B, cv2.IMREAD_COLOR) 47 | im_AB = np.concatenate([im_A, im_B], 1) 48 | cv2.imwrite(path_AB, im_AB) 49 | -------------------------------------------------------------------------------- /utils.py: -------------------------------------------------------------------------------- 1 | import jittor as jt 2 | import numpy as np 3 | 4 | EYE_H = 40 5 | EYE_W = 56 6 | NOSE_H = 48 7 | NOSE_W = 48 8 | MOUTH_H = 40 9 | MOUTH_W = 64 10 | 11 | def masked(A, mask): 12 | return (A/2+0.5)*mask*2-1 13 | 14 | def inverse_mask(mask): 15 | return jt.ones(mask.shape)-mask 16 | 17 | def addone_with_mask(A, mask): 18 | return ((A/2+0.5)*mask + (jt.ones(mask.shape)-mask))*2-1 19 | 20 | def partCombiner2_bg(center, eyel, eyer, nose, mouth, hair, bg, maskh, maskb, comb_op = 1, load_h = 512, load_w = 512): 21 | if comb_op == 0: 22 | # use max pooling, pad black for eyes etc 23 | padvalue = -1 24 | hair = masked(hair, maskh) 25 | bg = masked(bg, maskb) 26 | else: 27 | # use min pooling, pad white for eyes etc 28 | padvalue = 1 29 | hair = addone_with_mask(hair, maskh) 30 | bg = addone_with_mask(bg, maskb) 31 | ratio = load_h // 256 32 | rhs = np.array([EYE_H,EYE_H,NOSE_H,MOUTH_H]) * ratio 33 | rws = np.array([EYE_W,EYE_W,NOSE_W,MOUTH_W]) * ratio 34 | bs,nc,_,_ = eyel.shape 35 | eyel_p = jt.ones((bs,nc,load_h,load_w)) 36 | eyer_p = jt.ones((bs,nc,load_h,load_w)) 37 | nose_p = jt.ones((bs,nc,load_h,load_w)) 38 | mouth_p = jt.ones((bs,nc,load_h,load_w)) 39 | locals = [eyel, eyer, nose, mouth] 40 | locals_p = [eyel_p, eyer_p, nose_p, mouth_p] 41 | for i in range(bs): 42 | c = center[i].data#x,y 43 | for j in range(4): 44 | locals_p[j][i] = jt.nn.ConstantPad2d((int(c[j,0]-rws[j]/2), int(load_w-(c[j,0]+rws[j]/2)), int(c[j,1]-rhs[j]/2), int(load_h-(c[j,1]+rhs[j]/2))),padvalue)(locals[j][i]) 45 | if comb_op == 0: 46 | eyes = jt.maximum(locals_p[0], locals_p[1]) 47 | eye_nose = jt.maximum(eyes, locals_p[2]) 48 | eye_nose_mouth = jt.maximum(eye_nose, locals_p[3]) 49 | eye_nose_mouth_hair = jt.maximum(hair, eye_nose_mouth) 50 | result = jt.maximum(bg, eye_nose_mouth_hair) 51 | else: 52 | eyes = jt.minimum(locals_p[0], locals_p[1]) 53 | eye_nose = jt.minimum(eyes, locals_p[2]) 54 | eye_nose_mouth = jt.minimum(eye_nose, locals_p[3]) 55 | eye_nose_mouth_hair = jt.minimum(hair, eye_nose_mouth) 56 | result = jt.minimum(bg, eye_nose_mouth_hair) 57 | return result 58 | 59 | def getLocalParts(fakeAB, center, maskh, maskb, load_h = 512, load_w = 512): 60 | bs,nc,_,_ = fakeAB.shape 61 | ratio = load_h // 256 62 | rhs = np.array([EYE_H,EYE_H,NOSE_H,MOUTH_H]) * ratio 63 | rws = np.array([EYE_W,EYE_W,NOSE_W,MOUTH_W]) * ratio 64 | eyel = jt.ones((bs,nc,int(rhs[0]),int(rws[0]))) 65 | eyer = jt.ones((bs,nc,int(rhs[1]),int(rws[1]))) 66 | nose = jt.ones((bs,nc,int(rhs[2]),int(rws[2]))) 67 | mouth = jt.ones((bs,nc,int(rhs[3]),int(rws[3]))) 68 | locals = [eyel, eyer, nose, mouth] 69 | for i in range(bs): 70 | c = center[i].data 71 | for j in range(4): 72 | locals[j][i] = fakeAB[i, :, int(c[j,1]-rhs[j]//2):int(c[j,1]+rhs[j]//2), int(c[j,0]-rws[j]//2):int(c[j,0]+rws[j]//2)] 73 | hair = masked(fakeAB, maskh) 74 | bg = masked(fakeAB, maskb) 75 | locals += [hair, bg] 76 | return locals 77 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # APDrawingGAN Jittor Implementation 2 | 3 | We provide [Jittor](https://github.com/Jittor/jittor) implementations for our CVPR 2019 oral paper "APDrawingGAN: Generating Artistic Portrait Drawings from Face Photos with Hierarchical GANs". [[Paper]](http://openaccess.thecvf.com/content_CVPR_2019/html/Yi_APDrawingGAN_Generating_Artistic_Portrait_Drawings_From_Face_Photos_With_Hierarchical_CVPR_2019_paper.html) 4 | 5 | This project generates artistic portrait drawings from face photos using a GAN-based model. 6 | 7 | ## Prerequisites 8 | - Linux or macOS 9 | - Python 3 10 | - CPU or NVIDIA GPU + CUDA CuDNN 11 | 12 | ## Sample Results 13 | Up: input, Down: output 14 |
15 |
16 |
17 |
18 |
19 |
20 |
22 |
23 |
24 |
25 |
26 |
27 |