Súbor:JPEG example subimage - equalized.svg
Zo stránky testwiki
Prejsť na navigáciu
Prejsť na vyhľadávanie
Veľkosť tohoto PNG náhľadu tohoto SVG súboru: 400 × 400 pixelov. Iné rozlíšenia: 240 × 240 pixelov | 480 × 480 pixelov | 768 × 768 pixelov | 1 024 × 1 024 pixelov | 2 048 × 2 048 pixelov .
Pôvodný súbor (SVG súbor, 400 × 400 pixelov, veľkosť súboru: 3 KB)
Tento zdieľaný súbor je z Wikimedia Commons a je možné ho používať na iných projektoch. Nižšie sú zobrazené informácie z popisnej stránky súboru.
Zhrnutie
| PopisJPEG example subimage - equalized.svg | |
| Dátum | |
| Zdroj |
Own work in Inkscape |
| Autor | en:User:Cburnett |
| Povolenie (Využívanie tohto súboru) |
GFDL (image); GPL (source code) |
| Ďalšie verzie | Image:JPEG example subimage.svg — Non-equalized image |
Source code
I generated the normalized data by writing a simple python script:
import math
img = [
[52, 55, 61, 66, 70, 61, 64, 73],
[63, 59, 55, 90, 109, 85, 69, 72],
[62, 59, 68, 113, 144, 104, 66, 73],
[63, 58, 71, 122, 154, 106, 70, 69],
[67, 61, 68, 104, 126, 88, 68, 70],
[79, 65, 60, 70, 77, 68, 58, 75],
[85, 71, 64, 59, 55, 61, 65, 83],
[87, 79, 69, 68, 65, 76, 78, 94]
]
# Number of pixels
N = len(img) * len(img[0])
# Initialize histogram and cumulative distribution function (cdf)
hist = {}
cdf = {}
norm_cdf = {}
for i in range(255):
hist[i] = 0
cdf[i] = 0
norm_cdf[i] = 0
# Create histogram
for row in img:
for val in row:
hist[val] += 1
# Create cdf
for i in range(255):
for j in range(i+1):
cdf[i] += hist[j]
norm_cdf[i] = int(math.floor(float(cdf[i]-1)/63*255))
newimg = [
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0]
]
for i in range(8):
for j in range(8):
newimg[i][j] = norm_cdf[ img[i][j] ]
print '+-------+-----------+-----+----------------+'
print '| %5s | %9s | %3s | %14s |' % ('Value', 'Histogram', 'cdf', 'Normalized cdf')
print '+-------+-----------+-----+----------------+'
for i in range(255):
if hist[i] == 0: continue
print '| %5s | %9s | %3s | %14s |' % (i, hist[i], cdf[i], norm_cdf[i])
print '+-------+-----------+-----+----------------+'
print ''
print 'Original subimage:'
print ''
for i in range(8):
print ('%4d'*8) % tuple(img[i])
print ''
print ''
print 'Equalized subimage:'
print ''
for i in range(8):
print ('%4d'*8) % tuple(newimg[i])
Sample output:
+-------+-----------+-----+----------------+ | Value | Histogram | cdf | Normalized cdf | +-------+-----------+-----+----------------+ | 52 | 1 | 1 | 0 | | 55 | 3 | 4 | 12 | | 58 | 2 | 6 | 20 | | 59 | 3 | 9 | 32 | | 60 | 1 | 10 | 36 | | 61 | 4 | 14 | 52 | | 62 | 1 | 15 | 56 | | 63 | 2 | 17 | 64 | | 64 | 2 | 19 | 72 | | 65 | 3 | 22 | 85 | | 66 | 2 | 24 | 93 | | 67 | 1 | 25 | 97 | | 68 | 5 | 30 | 117 | | 69 | 3 | 33 | 129 | | 70 | 4 | 37 | 145 | | 71 | 2 | 39 | 153 | | 72 | 1 | 40 | 157 | | 73 | 2 | 42 | 165 | | 75 | 1 | 43 | 170 | | 76 | 1 | 44 | 174 | | 77 | 1 | 45 | 178 | | 78 | 1 | 46 | 182 | | 79 | 2 | 48 | 190 | | 83 | 1 | 49 | 194 | | 85 | 2 | 51 | 202 | | 87 | 1 | 52 | 206 | | 88 | 1 | 53 | 210 | | 90 | 1 | 54 | 214 | | 94 | 1 | 55 | 218 | | 104 | 2 | 57 | 226 | | 106 | 1 | 58 | 230 | | 109 | 1 | 59 | 234 | | 113 | 1 | 60 | 238 | | 122 | 1 | 61 | 242 | | 126 | 1 | 62 | 246 | | 144 | 1 | 63 | 250 | | 154 | 1 | 64 | 255 | +-------+-----------+-----+----------------+ Original subimage: 52 55 61 66 70 61 64 73 63 59 55 90 109 85 69 72 62 59 68 113 144 104 66 73 63 58 71 122 154 106 70 69 67 61 68 104 126 88 68 70 79 65 60 70 77 68 58 75 85 71 64 59 55 61 65 83 87 79 69 68 65 76 78 94 Equalized subimage: 0 12 52 93 145 52 72 165 64 32 12 214 234 202 129 157 56 32 117 238 250 226 93 165 64 20 153 242 255 230 145 129 97 52 117 226 246 210 117 145 190 85 36 145 178 117 20 170 202 153 72 32 12 52 85 194 206 190 129 117 85 174 182 218
Licencovanie
Image is licensed under the GFDL:
Ja, držiteľ autorských práv k tomuto dielu ho týmto zverejňujem za podmienok nasledovných licencií:
| Bolo udelené povolenie kopírovať, širiť a/alebo meniť tento dokument za podmienok GNU Free Documentation License, verzie 1.2 alebo ktorejkoľvek neskoršej verzie publikovanej Free Software Foundation; bez Nemenných častí, bez Textov na prednej obálke a bez Textov na zadnej obálke. Kópia tejto licencie je zahrnutá v časti nazvanej GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
| Tento súbor podlieha licencii Creative Commons Attribution-Share Alike 3.0 Unported | ||
| ||
| Táto šablóna licencie bola pridaná k tomuto súboru počas aktualizácie licencovania GFDL.http://creativecommons.org/licenses/by-sa/3.0/CC BY-SA 3.0Creative Commons Attribution-Share Alike 3.0truetrue |
Môžete si zvoliť ľubovolnú z týchto licencií.
Source code is licensed under the GPL version 2:
Ja, držiteľ autorských práv k tomuto dielu ho týmto zverejňujem za podmienok nasledovnej licencie:
| This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2. This work is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See version 2 of the GNU General Public License for more details. GNU General Public License v2GPLv2https://www.gnu.org/licenses/old-licenses/gpl-2.0.htmltrue |
Štítky
Pridajte jednoriadkové vysvetlenie, čo tento súbor predstavuje
Položky prezentované týmto súborom
motív
3. január 2008
image/svg+xml
3 336 bajt
82c2e4e4f220707b1e00821bbf2a59e4716467ac
História súboru
Po kliknutí na dátum/čas uvidíte ako súbor vyzeral vtedy.
| Dátum/Čas | Náhľad | Rozmery | Používateľ | Komentár | |
|---|---|---|---|---|---|
| aktuálna | 14:16, 23. október 2022 | 400 × 400 (3 KB) | wikimediacommons>Smasongarrison | seems to have passed the validation check after slimmed down with svgomg // Editing SVG source code using c:User:Rillke/SVGedit.js |
Použitie súboru
Na tento súbor odkazuje nasledujúca stránka: