Skip to content

Commit 3861e52

Browse files
authored
Computer vision (#3)
* Create a * Create a * Add files via upload * Create a * Add files via upload * Create demo_image * Delete demo_image * Delete a * Create a * Add files via upload * Create a * Add files via upload * Create a * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Update Readme.md * Create a * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Create a * Create a * Create a * Add files via upload * Add files via upload * Delete manifest.json * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Create a * Create a * Add files via upload * Create a * Create a * Create a * Create a * Delete a * Add files via upload * Create a * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Create a * Create a * Create a * Create a * Create a * Add files via upload * Create __init__.py * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Create a * Create a * Create a * Create a * Create a * Create a * Create a * Create a * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Delete a * Create a * Add files via upload * Add files via upload * Create a * Create a * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Delete a * Create a * Add files via upload * Create a * Create a * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Create a * Create a * Add files via upload * Create a * Add files via upload * Create a * Create a * Add files via upload * Add files via upload * Create a * Create a * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Create a * Create a * Create a * Create a * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Delete a * Delete a * Delete a * Add files via upload * Delete a * Delete a * Delete a * Delete a * Delete a * Create a * Add files via upload * Add files via upload * Update Introduction.md * Update Introduction.md * Update Introduction.md * Update Introduction.md * Update Introduction.md
1 parent 349e9ab commit 3861e52

643 files changed

Lines changed: 114280 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Binary file not shown.
Binary file not shown.
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Object Detection Using Tensorflow
2+
3+
# Problem Statement
4+
5+
<p align="center">
6+
<img src="imgs/ProblemStatement.png" height="420" width="520">
7+
8+
</p>
9+
10+
11+
# Architecture and Output
12+
13+
<p align="center">
14+
<img src="imgs/Architecture.png" height="420" width="520">
15+
</p>
16+
17+
# Demo
18+
19+
https://youtu.be/l8GDmGLfAfM
20+
21+
# Installation
22+
23+
TensorFlow™ is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them.
24+
25+
## Installation
26+
27+
**1.) Python and pip**
28+
29+
Python is automatically installed on Ubuntu. Take a moment to confirm (by issuing a python -V command) that one of the following Python versions is already installed on your system:
30+
31+
- Python 2.7
32+
- Python 3.3+
33+
34+
The pip or pip3 package manager is usually installed on Ubuntu. Take a moment to confirm (by issuing a *pip -V* or *pip3 -V* command) that pip or pip3 is installed. We strongly recommend version 8.1 or higher of pip or pip3. If Version 8.1 or later is not installed, issue the following command, which will either install or upgrade to the latest pip version:
35+
36+
$ sudo apt-get install python-pip python-dev # for Python 2.7
37+
$ sudo apt-get install python3-pip python3-dev # for Python 3.n
38+
39+
**2.) OpenCV**
40+
41+
See required commands to install OpenCV on Ubuntu in [here](https://gist.github.com/dynamicguy/3d1fce8dae65e765f7c4).
42+
43+
**3.) TensorFlow**
44+
45+
Install TensorFlow by invoking one of the following commands:
46+
47+
$ pip install tensorflow # Python 2.7; CPU support (no GPU support)
48+
$ pip3 install tensorflow # Python 3.n; CPU support (no GPU support)
49+
$ pip install tensorflow-gpu # Python 2.7; GPU support
50+
$ pip3 install tensorflow-gpu # Python 3.n; GPU support
51+
52+
**4.) TensorFlow Object Detection API**
53+
54+
See required commands to install TensorFlow Object Detection API on Ubuntu in [here](https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/installation.md).
55+
56+
57+
58+
# Steps To Run this File
59+
60+
The object detection classifier is all ready to go!
61+
62+
Step1:
63+
Python scripts are available to test it out on an image, video, or webcam feed.
64+
Feed an image or Video.
65+
66+
Step2:
67+
To test your object detector, move a picture of the object or objects into the \object_detection folder, and change the IMAGE_NAME variable in the Object_detection_image.py to match the file name of the picture.
68+
69+
Step3:
70+
To run any of the scripts, type “idle” in the Anaconda Command Prompt (with the “tensorflow1” virtual environment activated) and press ENTER. This will open IDLE, and from there, you can open any of the scripts and run them.
71+
72+
If everything is working properly, the object detector will initialize for about 10 seconds and then display a window showing any objects it’s detected in the image!
73+
74+
75+
76+
*Including the Dataset provided we have also include our images for better accuracy.
77+
And those images are uploaded with this github repository.
Lines changed: 243 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,243 @@
1+
filename,width,height,class,xmin,ymin,xmax,ymax
2+
Pantene57.jpg,1024,538,Pantene,6,44,201,413
3+
Pantene57.jpg,1024,538,Pantene,195,1,389,449
4+
Pantene57.jpg,1024,538,Pantene,384,1,539,450
5+
Pantene57.jpg,1024,538,Pantene,545,1,739,434
6+
Pantene94.jpg,1024,640,Pantene,432,129,598,571
7+
Pantene94.jpg,1024,640,Head_&_Shoulders,214,127,407,599
8+
Pantene94.jpg,1024,640,Head_&_Shoulders,22,117,212,587
9+
HS48.jpg,1024,640,Head_&_Shoulders,284,72,411,488
10+
HS48.jpg,1024,640,Head_&_Shoulders,130,138,281,531
11+
HS49.jpg,1024,640,Head_&_Shoulders,109,161,260,543
12+
HS49.jpg,1024,640,Head_&_Shoulders,270,177,389,508
13+
HS49.jpg,1024,640,Head_&_Shoulders,397,134,495,505
14+
HS49.jpg,1024,640,Head_&_Shoulders,519,192,591,462
15+
Ariel17.jpg,1023,1008,Ariel,103,297,326,913
16+
Ariel17.jpg,1023,1008,Ariel,414,575,700,898
17+
Ariel17.jpg,1023,1008,Ariel,691,512,908,949
18+
Pantene93.jpg,1024,640,Pantene,60,31,183,315
19+
Pantene93.jpg,1024,640,Pantene,186,30,295,317
20+
Pantene93.jpg,1024,640,Pantene,302,36,397,312
21+
Pantene93.jpg,1024,640,Pantene,399,40,488,313
22+
Pantene93.jpg,1024,640,Pantene,495,50,569,305
23+
Pantene93.jpg,1024,640,Pantene,574,68,646,306
24+
Pantene93.jpg,1024,640,Pantene,649,101,716,308
25+
Pantene93.jpg,1024,640,Pantene,715,111,784,305
26+
Pantene93.jpg,1024,640,Pantene,788,104,841,308
27+
Pantene93.jpg,1024,640,Pantene,841,102,903,299
28+
Pantene93.jpg,1024,640,Pantene,111,400,220,604
29+
Pantene93.jpg,1024,640,Pantene,1,410,86,606
30+
Pantene93.jpg,1024,640,Pantene,237,395,332,608
31+
Pantene93.jpg,1024,640,Pantene,337,404,411,597
32+
Pantene93.jpg,1024,640,Pantene,415,398,476,596
33+
Pantene93.jpg,1024,640,Pantene,484,397,546,577
34+
Pantene93.jpg,1024,640,Pantene,551,385,600,576
35+
Pantene93.jpg,1024,640,Pantene,608,387,658,563
36+
Pantene93.jpg,1024,640,Pantene,662,381,708,583
37+
Pantene93.jpg,1024,640,Pantene,759,372,809,526
38+
Pantene93.jpg,1024,640,Pantene,814,371,849,527
39+
Pantene93.jpg,1024,640,Pantene,853,367,893,510
40+
w58.jpeg,704,412,Whisper,29,2,681,360
41+
Ariel11.jpg,590,590,Ariel,66,32,524,542
42+
Pantene20.jpg,576,768,Pantene,178,133,372,688
43+
Pantene20.jpg,576,768,Pantene,435,282,576,766
44+
Pampers17.jpg,768,1024,Pampers,22,434,263,608
45+
Pampers17.jpg,768,1024,Pampers,256,438,447,614
46+
Pampers17.jpg,768,1024,Pampers,435,473,588,621
47+
Pampers17.jpg,768,1024,Pampers,560,440,718,630
48+
Pantene1.jpg,1024,768,Pantene,196,259,337,442
49+
Pantene1.jpg,1024,768,Pantene,400,411,526,518
50+
Pantene1.jpg,1024,768,Pantene,550,421,680,536
51+
Pantene1.jpg,1024,768,Pantene,712,422,839,543
52+
Pantene1.jpg,1024,768,Pantene,189,147,371,602
53+
Pantene1.jpg,1024,768,Pantene,385,287,535,737
54+
Pantene1.jpg,1024,768,Pantene,539,288,688,716
55+
Pantene1.jpg,1024,768,Pantene,705,290,867,694
56+
HS28.jpg,500,500,Head_&_Shoulders,60,13,232,489
57+
HS28.jpg,500,500,Head_&_Shoulders,268,13,443,484
58+
Tide34.jpg,900,674,Tide,97,365,250,512
59+
Tide34.jpg,900,674,Tide,450,379,532,482
60+
Pampers15.jpg,768,1024,Pampers,61,95,226,237
61+
Pampers15.jpg,768,1024,Pampers,230,86,366,229
62+
Pampers15.jpg,768,1024,Pampers,366,114,464,227
63+
Pampers15.jpg,768,1024,Pampers,450,79,557,224
64+
Pampers15.jpg,768,1024,Pampers,91,294,187,400
65+
Pampers15.jpg,768,1024,Pampers,188,317,266,400
66+
Pampers15.jpg,768,1024,Pampers,260,266,357,404
67+
Pampers15.jpg,768,1024,Pampers,352,270,461,392
68+
Pampers29.jpg,576,768,Pampers,74,253,489,686
69+
Tide35.jpg,2322,2610,Tide,726,1363,1312,1847
70+
HS29.jpg,460,460,Head_&_Shoulders,130,6,333,454
71+
Pantene4.jpg,576,768,Pantene,36,273,157,670
72+
Pantene4.jpg,576,768,Pantene,153,252,314,672
73+
Pantene4.jpg,576,768,Pantene,1,360,36,660
74+
Pantene4.jpg,576,768,Head_&_Shoulders,318,267,481,682
75+
Pantene4.jpg,576,768,Head_&_Shoulders,467,299,557,639
76+
Tide31.jpg,1200,1200,Tide,386,423,704,750
77+
Pampers139.jpg,1024,640,Pampers,379,33,742,255
78+
Pampers139.jpg,1024,640,Pampers,386,250,675,359
79+
Pampers139.jpg,1024,640,Pampers,374,351,638,460
80+
Pampers139.jpg,1024,640,Pampers,346,496,610,588
81+
Pampers139.jpg,1024,640,Pampers,75,35,345,330
82+
Pampers139.jpg,1024,640,Pampers,86,454,303,570
83+
Ariel70.jpg,800,600,Ariel,108,229,282,412
84+
Ariel70.jpg,800,600,Ariel,321,234,471,380
85+
Ariel70.jpg,800,600,Ariel,504,228,688,391
86+
Ariel70.jpg,800,600,Ariel,693,240,800,400
87+
Ariel59.jpg,800,600,Ariel,130,112,231,215
88+
Ariel59.jpg,800,600,Ariel,232,115,331,229
89+
Ariel59.jpg,800,600,Ariel,335,121,423,232
90+
Ariel59.jpg,800,600,Ariel,425,130,509,236
91+
Ariel59.jpg,800,600,Ariel,521,77,617,227
92+
Ariel59.jpg,800,600,Ariel,624,63,729,239
93+
Ariel59.jpg,800,600,Ariel,729,71,800,237
94+
Ariel59.jpg,800,600,Ariel,111,250,211,343
95+
Ariel59.jpg,800,600,Ariel,217,252,306,343
96+
Ariel59.jpg,800,600,Ariel,307,254,394,346
97+
Ariel59.jpg,800,600,Ariel,397,259,481,350
98+
Ariel59.jpg,800,600,Ariel,123,337,210,434
99+
Ariel59.jpg,800,600,Ariel,213,346,304,441
100+
Ariel59.jpg,800,600,Ariel,304,350,392,439
101+
Ariel59.jpg,800,600,Ariel,396,350,476,446
102+
Ariel59.jpg,800,600,Ariel,7,313,55,442
103+
Pampers138.jpg,1024,640,Pampers,413,38,822,544
104+
Pampers138.jpg,1024,640,Pampers,1,32,363,572
105+
HS10.jpg,576,768,Head_&_Shoulders,259,218,386,520
106+
HS10.jpg,576,768,Head_&_Shoulders,171,298,270,539
107+
HS10.jpg,576,768,Head_&_Shoulders,66,295,174,541
108+
HS10.jpg,576,768,Head_&_Shoulders,1,293,70,547
109+
Pantene19.jpg,768,1024,Pantene,118,252,385,964
110+
Pantene19.jpg,768,1024,Pantene,331,237,659,994
111+
Pantene25.jpg,768,1024,Pantene,221,165,577,983
112+
Pantene31.jpg,768,1024,Pantene,126,103,409,900
113+
Pantene31.jpg,768,1024,Pantene,366,104,679,885
114+
Tide32.jpg,1200,1200,Tide,264,326,901,882
115+
Ariel67.jpg,576,768,Ariel,16,197,456,677
116+
Pampers12.jpg,768,1024,Pampers,356,386,756,783
117+
Pampers12.jpg,768,1024,Pampers,122,413,353,774
118+
Pampers107.jpg,1024,1024,Pampers,66,21,872,999
119+
Tide33.jpg,2048,1530,Tide,80,85,531,544
120+
Tide33.jpg,2048,1530,Tide,931,120,1176,448
121+
Tide33.jpg,2048,1530,Tide,1374,134,1560,358
122+
Tide33.jpg,2048,1530,Tide,1715,132,1837,310
123+
Tide33.jpg,2048,1530,Tide,1070,1220,1270,1438
124+
Tide33.jpg,2048,1530,Tide,1403,971,1593,1130
125+
Tide33.jpg,2048,1530,Tide,1684,803,1827,950
126+
Pantene15.jpg,768,1024,Pantene,542,448,752,942
127+
Pantene15.jpg,768,1024,Pantene,26,465,285,983
128+
Pantene15.jpg,768,1024,Pantene,420,233,547,644
129+
Pantene15.jpg,768,1024,Pantene,208,316,355,669
130+
Pantene15.jpg,768,1024,Pantene,166,246,263,447
131+
Pampers23.jpg,800,600,Pampers,105,328,670,507
132+
w22.jpg,800,600,Whisper,17,4,423,296
133+
w22.jpg,800,600,Whisper,412,2,799,306
134+
w22.jpg,800,600,Whisper,11,277,420,594
135+
w22.jpg,800,600,Whisper,406,290,753,587
136+
tide17.jpg,600,400,Tide,107,1,363,238
137+
Pantene14.jpg,576,768,Pantene,196,301,332,629
138+
Pantene14.jpg,576,768,Pantene,226,410,322,499
139+
Ariel68.jpg,576,768,Ariel,1,386,132,623
140+
Ariel68.jpg,576,768,Ariel,205,228,451,549
141+
Pampers120.jpg,590,590,Pampers,103,58,481,526
142+
HS30.jpg,780,1024,Head_&_Shoulders,13,104,337,957
143+
HS30.jpg,780,1024,Head_&_Shoulders,389,96,723,963
144+
Tide10.jpg,1500,1500,Tide,164,619,483,921
145+
Tide10.jpg,1500,1500,Tide,704,708,1028,1042
146+
w18.jpg,1024,768,Whisper,94,56,341,360
147+
w18.jpg,1024,768,Whisper,327,27,617,348
148+
w18.jpg,1024,768,Whisper,36,341,344,608
149+
w18.jpg,1024,768,Whisper,324,324,675,612
150+
w18.jpg,1024,768,Whisper,649,240,1020,620
151+
HS19.jpg,576,768,Head_&_Shoulders,101,156,326,768
152+
HS19.jpg,576,768,Head_&_Shoulders,313,114,571,768
153+
HS31.jpg,620,900,Head_&_Shoulders,54,34,312,753
154+
HS31.jpg,620,900,Head_&_Shoulders,318,29,572,742
155+
HS25.jpg,400,400,Head_&_Shoulders,128,18,277,384
156+
Pantene38.jpg,547,497,Pantene,168,24,353,497
157+
Pampers2.jpg,768,1024,Pampers,203,256,581,660
158+
w26.jpg,1024,768,Whisper,54,362,409,606
159+
w26.jpg,1024,768,Whisper,392,381,699,598
160+
w26.jpg,1024,768,Whisper,675,362,962,588
161+
w26.jpg,1024,768,Whisper,392,188,690,396
162+
Pampers126.jpg,660,460,Pampers,28,120,230,164
163+
Pampers126.jpg,660,460,Pampers,32,69,224,120
164+
Pampers126.jpg,660,460,Pampers,41,6,247,71
165+
Pampers126.jpg,660,460,Pampers,217,71,405,158
166+
Pampers126.jpg,660,460,Pampers,412,6,585,176
167+
Pampers126.jpg,660,460,Pampers,195,223,361,361
168+
Pampers126.jpg,660,460,Pampers,373,214,541,363
169+
Pantene39.jpg,1600,1600,Pantene,233,27,576,1559
170+
Pantene39.jpg,1600,1600,Pantene,1033,37,1357,1561
171+
Tide49.jpg,1500,1500,Tide,551,642,1081,1126
172+
Ariel1.jpg,363,640,Ariel,35,21,306,623
173+
Tide8.jpg,400,400,Tide,118,133,227,241
174+
w40.jpg,576,768,Whisper,1,291,292,567
175+
w40.jpg,576,768,Whisper,292,240,576,563
176+
Pampers140.jpg,1024,640,Pampers,191,95,451,340
177+
Pampers140.jpg,1024,640,Pampers,154,358,441,450
178+
Pampers140.jpg,1024,640,Pampers,151,454,439,537
179+
Pampers140.jpg,1024,640,Pampers,508,47,852,198
180+
Pampers140.jpg,1024,640,Pampers,493,180,813,286
181+
Pampers140.jpg,1024,640,Pampers,483,280,789,375
182+
Pampers140.jpg,1024,640,Pampers,472,382,754,506
183+
Pampers140.jpg,1024,640,Pampers,475,494,752,569
184+
Pantene63.jpg,960,960,Pantene,37,84,381,896
185+
Pantene63.jpg,960,960,Pantene,340,39,602,779
186+
Pantene63.jpg,960,960,Pantene,586,163,924,630
187+
w7.jpg,1024,768,Whisper,25,208,504,535
188+
w7.jpg,1024,768,Whisper,511,279,1021,545
189+
Pampers80.jpg,576,768,Pampers,79,111,551,614
190+
Pampers94.jpg,576,768,Pampers,62,135,433,523
191+
Tide63.jpg,800,600,Tide,29,251,200,418
192+
Tide63.jpg,800,600,Tide,309,365,435,491
193+
Tide63.jpg,800,600,Tide,713,368,800,499
194+
Tide63.jpg,800,600,Tide,470,421,607,514
195+
Tide63.jpg,800,600,Tide,370,1,510,89
196+
Tide63.jpg,800,600,Tide,146,1,293,74
197+
Ariel3.jpg,458,458,Ariel,38,2,399,434
198+
Ariel32.jpg,1024,1024,Ariel,163,99,893,855
199+
Pampers91.jpg,800,600,Pampers,23,140,390,420
200+
Pampers91.jpg,800,600,Pampers,354,100,667,392
201+
w47.jpg,342,342,Whisper,40,60,317,225
202+
Ariel6.jpg,2000,2000,Ariel,624,977,1365,1742
203+
HS52.jpg,1024,640,Head_&_Shoulders,46,235,153,504
204+
HS52.jpg,1024,640,Head_&_Shoulders,159,275,254,495
205+
HS52.jpg,1024,640,Head_&_Shoulders,255,266,363,497
206+
HS52.jpg,1024,640,Head_&_Shoulders,370,236,450,479
207+
HS52.jpg,1024,640,Head_&_Shoulders,463,274,546,483
208+
HS52.jpg,1024,640,Head_&_Shoulders,555,276,629,483
209+
HS52.jpg,1024,640,Head_&_Shoulders,640,249,701,466
210+
HS50.jpg,1024,640,Head_&_Shoulders,61,186,139,380
211+
HS50.jpg,1024,640,Head_&_Shoulders,136,182,212,375
212+
HS50.jpg,1024,640,Head_&_Shoulders,221,209,291,368
213+
HS50.jpg,1024,640,Head_&_Shoulders,301,186,358,362
214+
HS50.jpg,1024,640,Head_&_Shoulders,367,187,438,360
215+
HS50.jpg,1024,640,Head_&_Shoulders,439,212,499,362
216+
HS50.jpg,1024,640,Head_&_Shoulders,517,182,575,358
217+
HS50.jpg,1024,640,Head_&_Shoulders,589,210,640,354
218+
HS50.jpg,1024,640,Head_&_Shoulders,652,211,707,353
219+
HS50.jpg,1024,640,Head_&_Shoulders,718,186,774,354
220+
HS50.jpg,1024,640,Head_&_Shoulders,783,212,833,355
221+
HS50.jpg,1024,640,Head_&_Shoulders,845,209,890,351
222+
HS50.jpg,1024,640,Head_&_Shoulders,79,456,137,606
223+
HS50.jpg,1024,640,Head_&_Shoulders,140,454,210,597
224+
HS50.jpg,1024,640,Head_&_Shoulders,214,460,271,589
225+
HS50.jpg,1024,640,Head_&_Shoulders,272,459,324,589
226+
HS50.jpg,1024,640,Head_&_Shoulders,322,446,377,587
227+
HS50.jpg,1024,640,Head_&_Shoulders,386,442,426,578
228+
HS50.jpg,1024,640,Head_&_Shoulders,543,444,581,550
229+
HS50.jpg,1024,640,Head_&_Shoulders,424,447,476,551
230+
HS50.jpg,1024,640,Head_&_Shoulders,477,445,535,546
231+
HS50.jpg,1024,640,Head_&_Shoulders,598,445,643,564
232+
HS50.jpg,1024,640,Head_&_Shoulders,646,445,694,563
233+
HS50.jpg,1024,640,Head_&_Shoulders,697,453,737,555
234+
HS50.jpg,1024,640,Head_&_Shoulders,739,448,780,554
235+
HS50.jpg,1024,640,Head_&_Shoulders,783,442,821,553
236+
w1.jpg,1024,768,Whisper,1,360,346,606
237+
w1.jpg,1024,768,Whisper,363,153,668,388
238+
w1.jpg,1024,768,Whisper,351,360,679,609
239+
w1.jpg,1024,768,Whisper,670,359,1000,584
240+
Tide70.jpg,768,1024,Tide,220,409,498,692
241+
HS51.jpg,1024,640,Head_&_Shoulders,118,195,259,596
242+
HS51.jpg,1024,640,Head_&_Shoulders,269,210,398,573
243+
HS51.jpg,1024,640,Head_&_Shoulders,407,153,509,534

0 commit comments

Comments
 (0)