Skip to content

Commit f513933

Browse files
authored
[Term Entry] Python:Pillow Image: .getcolors()
* add pillow terms getcolors * minor fixes in code * Minor changes ---------
1 parent 95955ef commit f513933

File tree

1 file changed

+326
-0
lines changed

1 file changed

+326
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,326 @@
1+
---
2+
Title: '.getcolors()'
3+
Description: 'Returns colors and their frequencies in an image.'
4+
Subjects:
5+
- 'Computer Science'
6+
- 'Data Visualization'
7+
Tags:
8+
- 'Images'
9+
- 'Pillow'
10+
- 'Python'
11+
CatalogContent:
12+
- 'learn-python-3'
13+
- 'paths/computer-science'
14+
---
15+
16+
In the Pillow library, the **`.getcolors()`** method retrieves a list of colors present in an image, along with the count of how many times each color appears. This method is useful for tasks like analyzing image content, generating color palettes, or simplifying images by identifying dominant colors.
17+
18+
## Syntax
19+
20+
```pseudo
21+
Image.getcolors(maxcolors=256)
22+
```
23+
24+
**Parameters:**
25+
26+
- `maxcolors` (int): The maximum number of unique colors to return.
27+
- If the number of colors in the image exceeds `maxcolors`, the method returns `None`.
28+
- If `None` is passed (or a sufficiently large number), it will attempt to return all colors.
29+
30+
**Return value:**
31+
32+
Returns a list of tuples. Each tuple is of the form `(count, color)`:
33+
34+
- `count`: Number of pixels with that color.
35+
- `color`: The color value (e.g., RGB or grayscale).
36+
37+
## Example
38+
39+
The image to be used for this example is:
40+
41+
![Input image to perform the .getcolors() operation](https://raw.githubusercontent.com/Codecademy/docs/main/media/samandgos.jpg)
42+
43+
In this example, the `.getcolors()` method returns a list of `(count, color)` tuples representing the number of times each color occurs in the image:
44+
45+
```py
46+
from PIL import Image
47+
48+
# Open the image
49+
image = Image.open("samandgos.jpg")
50+
51+
# Convert the image to RGB
52+
image = image.convert("RGB")
53+
54+
# Reduce the image to 256 colors
55+
image = image.quantize(colors=256)
56+
57+
# Use the .getcolors() method
58+
colors = image.getcolors(maxcolors=256)
59+
60+
if colors is None:
61+
print("Still too many colors")
62+
else:
63+
for count, color in colors:
64+
print(f"Color {color} occurs {count} times")
65+
```
66+
67+
The output lists each color in the simplified image along with the number of times it occurs. The output for this example will be:
68+
69+
```shell
70+
Color 0 occurs 5351 times
71+
Color 1 occurs 2097 times
72+
Color 2 occurs 8281 times
73+
Color 3 occurs 4160 times
74+
Color 4 occurs 2251 times
75+
Color 5 occurs 9037 times
76+
Color 6 occurs 7575 times
77+
Color 7 occurs 4630 times
78+
Color 8 occurs 5681 times
79+
Color 9 occurs 4452 times
80+
Color 10 occurs 1004 times
81+
Color 11 occurs 3223 times
82+
Color 12 occurs 8721 times
83+
Color 13 occurs 4921 times
84+
Color 14 occurs 1966 times
85+
Color 15 occurs 7166 times
86+
Color 16 occurs 7571 times
87+
Color 17 occurs 6468 times
88+
Color 18 occurs 4326 times
89+
Color 19 occurs 4736 times
90+
Color 20 occurs 4187 times
91+
Color 21 occurs 6036 times
92+
Color 22 occurs 5684 times
93+
Color 23 occurs 5236 times
94+
Color 24 occurs 2330 times
95+
Color 25 occurs 6085 times
96+
Color 26 occurs 3656 times
97+
Color 27 occurs 5693 times
98+
Color 28 occurs 6344 times
99+
Color 29 occurs 2655 times
100+
Color 30 occurs 3257 times
101+
Color 31 occurs 3736 times
102+
Color 32 occurs 4065 times
103+
Color 33 occurs 7523 times
104+
Color 34 occurs 3035 times
105+
Color 35 occurs 6328 times
106+
Color 36 occurs 5641 times
107+
Color 37 occurs 5685 times
108+
Color 38 occurs 6326 times
109+
Color 39 occurs 6679 times
110+
Color 40 occurs 6636 times
111+
Color 41 occurs 7761 times
112+
Color 42 occurs 4872 times
113+
Color 43 occurs 5512 times
114+
Color 44 occurs 2918 times
115+
Color 45 occurs 1415 times
116+
Color 46 occurs 5392 times
117+
Color 47 occurs 6004 times
118+
Color 48 occurs 6780 times
119+
Color 49 occurs 2384 times
120+
Color 50 occurs 1511 times
121+
Color 51 occurs 4944 times
122+
Color 52 occurs 4678 times
123+
Color 53 occurs 6499 times
124+
Color 54 occurs 6695 times
125+
Color 55 occurs 4522 times
126+
Color 56 occurs 5444 times
127+
Color 57 occurs 4856 times
128+
Color 58 occurs 5478 times
129+
Color 59 occurs 6711 times
130+
Color 60 occurs 3428 times
131+
Color 61 occurs 4900 times
132+
Color 62 occurs 6881 times
133+
Color 63 occurs 3274 times
134+
Color 64 occurs 5509 times
135+
Color 65 occurs 5787 times
136+
Color 66 occurs 2966 times
137+
Color 67 occurs 4922 times
138+
Color 68 occurs 3112 times
139+
Color 69 occurs 2656 times
140+
Color 70 occurs 4266 times
141+
Color 71 occurs 3805 times
142+
Color 72 occurs 3642 times
143+
Color 73 occurs 2387 times
144+
Color 74 occurs 3697 times
145+
Color 75 occurs 5587 times
146+
Color 76 occurs 6387 times
147+
Color 77 occurs 5384 times
148+
Color 78 occurs 3397 times
149+
Color 79 occurs 5873 times
150+
Color 80 occurs 5233 times
151+
Color 81 occurs 4251 times
152+
Color 82 occurs 5992 times
153+
Color 83 occurs 4090 times
154+
Color 84 occurs 3494 times
155+
Color 85 occurs 4198 times
156+
Color 86 occurs 5352 times
157+
Color 87 occurs 4583 times
158+
Color 88 occurs 6856 times
159+
Color 89 occurs 2130 times
160+
Color 90 occurs 3103 times
161+
Color 91 occurs 5131 times
162+
Color 92 occurs 5134 times
163+
Color 93 occurs 4499 times
164+
Color 94 occurs 5915 times
165+
Color 95 occurs 6793 times
166+
Color 96 occurs 3934 times
167+
Color 97 occurs 7124 times
168+
Color 98 occurs 5011 times
169+
Color 99 occurs 6726 times
170+
Color 100 occurs 6869 times
171+
Color 101 occurs 7047 times
172+
Color 102 occurs 4238 times
173+
Color 103 occurs 5505 times
174+
Color 104 occurs 5404 times
175+
Color 105 occurs 3465 times
176+
Color 106 occurs 4124 times
177+
Color 107 occurs 4391 times
178+
Color 108 occurs 4349 times
179+
Color 109 occurs 4072 times
180+
Color 110 occurs 4062 times
181+
Color 111 occurs 4802 times
182+
Color 112 occurs 4841 times
183+
Color 113 occurs 6089 times
184+
Color 114 occurs 7084 times
185+
Color 115 occurs 1471 times
186+
Color 116 occurs 3802 times
187+
Color 117 occurs 4654 times
188+
Color 118 occurs 7700 times
189+
Color 119 occurs 1397 times
190+
Color 120 occurs 3759 times
191+
Color 121 occurs 2965 times
192+
Color 122 occurs 5437 times
193+
Color 123 occurs 2259 times
194+
Color 124 occurs 6166 times
195+
Color 125 occurs 5180 times
196+
Color 126 occurs 4777 times
197+
Color 127 occurs 5131 times
198+
Color 128 occurs 5566 times
199+
Color 129 occurs 4653 times
200+
Color 130 occurs 7840 times
201+
Color 131 occurs 4962 times
202+
Color 132 occurs 2570 times
203+
Color 133 occurs 1590 times
204+
Color 134 occurs 4376 times
205+
Color 135 occurs 3156 times
206+
Color 136 occurs 4364 times
207+
Color 137 occurs 3165 times
208+
Color 138 occurs 4866 times
209+
Color 139 occurs 5165 times
210+
Color 140 occurs 6053 times
211+
Color 141 occurs 3941 times
212+
Color 142 occurs 4895 times
213+
Color 143 occurs 2444 times
214+
Color 144 occurs 5314 times
215+
Color 145 occurs 5200 times
216+
Color 146 occurs 3863 times
217+
Color 147 occurs 5288 times
218+
Color 148 occurs 6256 times
219+
Color 149 occurs 7713 times
220+
Color 150 occurs 4387 times
221+
Color 151 occurs 6095 times
222+
Color 152 occurs 6858 times
223+
Color 153 occurs 3763 times
224+
Color 154 occurs 6492 times
225+
Color 155 occurs 3406 times
226+
Color 156 occurs 2824 times
227+
Color 157 occurs 4030 times
228+
Color 158 occurs 4426 times
229+
Color 159 occurs 4754 times
230+
Color 160 occurs 5036 times
231+
Color 161 occurs 6252 times
232+
Color 162 occurs 5088 times
233+
Color 163 occurs 4866 times
234+
Color 164 occurs 4744 times
235+
Color 165 occurs 5393 times
236+
Color 166 occurs 2679 times
237+
Color 167 occurs 5971 times
238+
Color 168 occurs 4345 times
239+
Color 169 occurs 2580 times
240+
Color 170 occurs 5619 times
241+
Color 171 occurs 3361 times
242+
Color 172 occurs 2991 times
243+
Color 173 occurs 5328 times
244+
Color 174 occurs 3382 times
245+
Color 175 occurs 6777 times
246+
Color 176 occurs 3731 times
247+
Color 177 occurs 4512 times
248+
Color 178 occurs 7768 times
249+
Color 179 occurs 2396 times
250+
Color 180 occurs 3988 times
251+
Color 181 occurs 5164 times
252+
Color 182 occurs 3219 times
253+
Color 183 occurs 7530 times
254+
Color 184 occurs 3541 times
255+
Color 185 occurs 4831 times
256+
Color 186 occurs 5813 times
257+
Color 187 occurs 4139 times
258+
Color 188 occurs 3720 times
259+
Color 189 occurs 7937 times
260+
Color 190 occurs 3594 times
261+
Color 191 occurs 5397 times
262+
Color 192 occurs 6046 times
263+
Color 193 occurs 5681 times
264+
Color 194 occurs 4991 times
265+
Color 195 occurs 5647 times
266+
Color 196 occurs 4275 times
267+
Color 197 occurs 4706 times
268+
Color 198 occurs 8018 times
269+
Color 199 occurs 5323 times
270+
Color 200 occurs 3471 times
271+
Color 201 occurs 3415 times
272+
Color 202 occurs 5235 times
273+
Color 203 occurs 5785 times
274+
Color 204 occurs 5801 times
275+
Color 205 occurs 2675 times
276+
Color 206 occurs 5914 times
277+
Color 207 occurs 3447 times
278+
Color 208 occurs 2012 times
279+
Color 209 occurs 5605 times
280+
Color 210 occurs 5324 times
281+
Color 211 occurs 5453 times
282+
Color 212 occurs 5658 times
283+
Color 213 occurs 3313 times
284+
Color 214 occurs 1382 times
285+
Color 215 occurs 4038 times
286+
Color 216 occurs 3344 times
287+
Color 217 occurs 6042 times
288+
Color 218 occurs 4893 times
289+
Color 219 occurs 4783 times
290+
Color 220 occurs 5210 times
291+
Color 221 occurs 7954 times
292+
Color 222 occurs 5376 times
293+
Color 223 occurs 5203 times
294+
Color 224 occurs 3249 times
295+
Color 225 occurs 4644 times
296+
Color 226 occurs 6352 times
297+
Color 227 occurs 5741 times
298+
Color 228 occurs 3665 times
299+
Color 229 occurs 4127 times
300+
Color 230 occurs 4011 times
301+
Color 231 occurs 6437 times
302+
Color 232 occurs 4812 times
303+
Color 233 occurs 3079 times
304+
Color 234 occurs 4886 times
305+
Color 235 occurs 3857 times
306+
Color 236 occurs 5840 times
307+
Color 237 occurs 4717 times
308+
Color 238 occurs 7219 times
309+
Color 239 occurs 6421 times
310+
Color 240 occurs 5862 times
311+
Color 241 occurs 3208 times
312+
Color 242 occurs 5490 times
313+
Color 243 occurs 4975 times
314+
Color 244 occurs 4550 times
315+
Color 245 occurs 5399 times
316+
Color 246 occurs 5703 times
317+
Color 247 occurs 5256 times
318+
Color 248 occurs 4182 times
319+
Color 249 occurs 5518 times
320+
Color 250 occurs 5247 times
321+
Color 251 occurs 4176 times
322+
Color 252 occurs 3356 times
323+
Color 253 occurs 5822 times
324+
Color 254 occurs 4965 times
325+
Color 255 occurs 4028 times
326+
```

0 commit comments

Comments
 (0)