food category transfer with conditional cycle gan and a...
TRANSCRIPT
Food Category Transfer withConditional Cycle GAN and
a Large-scale Food Image Dataset
Daichi Horita Ryosuke Tanno Wataru Shimoda Keiji Yanai
The University of Electro-Communications,
Tokyo, Japan
Image generation mehtod:GAN
• GAN (Generative Adversarial Network)
[Goodfellow et al. NIPS 2014]
• DCGAN (Deep Convolutional GAN) [Radford et al. ICLR 2016 ]
2018/7/14 UEC yanailab 2017 2
Objective
• Keep shapes of food, which is before conversion
• Task
2018/7/14 UEC yanailab 2017 3
1. Convert with high quality
2. Convert to multiple food category by one network
Domain transfer(CycleGAN)
Food image converter
Chilled noodles
Like beef bowl
soba
Like beef bowl
cary
Like beef bowl
beef bowl
CycleGAN
• CycleGAN([Zhu+ ICCV-17])
・Cycle GAN is trained with unpaired image set
2018/7/13 UEC yanailab 2017 4
CycleGAN• Convert input image domain form X to Y by network G.
• Reverse the domain form Y to X by network F.
• minimize the difference between
the input image 𝑥 and reversed image ො𝑥
2018/7/14 UEC yanailab 2017 5
Conversion can be learned without pair imagesCycle Consistency Loss
Limitation of CycleGAN
• Conversion is limited to 1 to 1.
→Extend 1 to n
2018/7/13 UEC yanailab 2017 6
Food image converter
Food image converter
Food image converter
Beef bowl to
Chilled noodle
Beef bowl to
Buckwheat
noodle
Beef bowl to
Curry
・・・
・・・
・・・
Corresponding feature “Food”
Conditional CycleGAN
• StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation [Choi+ arXiv-17]• Cycle GAN + AC-GAN
2018/7/13 UEC yanailab 2017 7
Discriminator for Conditional Cycle GAN
• AC-GAN
• Conditional Image Synthesis With Auxiliary Classifier GANs AC-GAN[Odena+ ICML-17]
2018/7/13 UEC yanailab 2017 8
Food image
converter
Beef bowl
Category selection
vector
Network Overview• Network otimizes three types of loss
2018/7/13 UEC yanailab 2017 9
Food image
converterFood image
converter
Adversarial
lossAuxiliary
loss
Consistency Loss
Experiments
• We use foods, which have similar dish plates as target food category for simplification.
2018/7/13 UEC yanailab 2017 10
Selected 10 kinds of food category.
カレー 炒飯 牛丼 冷やし中華 ミートスパ
ラーメン 白飯 蕎麦 うなぎ 焼きそば
Curry Fried rice Beef bowl Chilled noodle Meat spaghetti
Ramen Rice Buckwheat noodle Eel bowl Fried noodle
Experimanetal Data
• Total amount:• 230k images
• Traing:0.9
• Testing:0.1
2018/7/13 UEC yanailab 2017 11
Target category Image number
Chilled noodle 13,499
Meat spaghetti 7,138
Buckwheat noodle 3,530
Ramen 74,007
Fried noodle 24,760
Rice 21,324
Curry rice 34,216
Beef bowl 18,396
Eel bowl 5,329
Fried rice 27,854
total 230,053
Experimental results
• In case of one food included in an image
2018/7/14 UEC yanailab 2017 12
Curry Fried rice Beef bowlChilled noodle Meat spaghettiInput
Experimental results
• In case of one food included in an image
2018/7/13 UEC yanailab 2017 13
Ramen RiceBuckwheat
noodle Eel bowl Fried noodleInput
Experimental results
• In case of multiple foods included in an image
2018/7/13 UEC yanailab 2017 14
Curry Fried rice Beef bowl Chilled noodle Meat spaghettiInput
Experimental results
• In case of multiple foods included in an image
2018/7/13 UEC yanailab 2017 15
ramen rice Buckwheat
noodle
Eel bowl Fried noodleinput
Demo videio
2018/7/13 UEC yanailab 2017 16
Evaluation using user study
2018/7/14 UEC yanailab 2017 17
Evaluation
Image
generation
Image
conversion
Error rate for generated images 12% 30%
Error rate for generated images 16% 32%
Mean error rate 14% 31%
2018/7/14 UEC yanailab 2017 18
Conclusion and future work
• Conclusion• We transform a food image to another category of a
food image automatically
• We adapted conditional CycleGAN which is an extended version of CycleGAN
• Future work• Extend target food categories for conversion.
• Arbitrary category.
2018/7/14 UEC yanailab 2017 19