-
Data: 2010-06-28 19:04:24
Temat: Re: Soft do statystyki ogniskowych
Od: Robert Gomulka <c...@e...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]de Fresz wrote:
[cut]
W ramach wprawek Pythonowych prosty skrypt:
#!/usr/bin/python
# TODO - percentage counter
# TODO - recursive traversal
# TODO - error handling
# TODO - values sorting
# TODO - values formatting
import pyexiv2
import os
import sys
files = os.listdir(sys.argv[1])
exposures = {}
focals = {}
isos = {}
count = 0
for jpeg in files:
count += 1
image = pyexiv2.Image(jpeg)
image.readMetadata()
expstr = str(image['Exif.Photo.ExposureTime'])
if expstr in exposures:
exposures[expstr] += 1
else:
exposures[expstr] = 1
focstr = str(image['Exif.Photo.FocalLength'])
if focstr in focals:
focals[focstr] += 1
else:
focals[focstr] = 1
isostr = str(image['Exif.Photo.ISOSpeedRatings'])
if isostr in isos:
isos[isostr] += 1
else:
isos[isostr] = 1
print "Exposures"
expkeys = exposures.keys()
for expkey in expkeys:
print expkey, exposures[expkey], "/", count
print
print "Focal lenghts"
fockeys = focals.keys()
for fockey in fockeys:
print fockey, focals[fockey], "/", count
print
print "Iso values"
isokeys = isos.keys()
for isokey in isokeys:
print isokey, isos[isokey], "/", count
Brzydki, ale w podstawowej wersji w bardzo podstawowym zakresie działa :)
Wymaga Pythona z bibliotekami. Wywołuje się go z jednym parametrem -
katalogiem do przeanalizowania. Nie działa rekursywnie.
Z pewnością na sieci znajdziesz lepsze implementacje, ta powstała wyłącznie
jako ćwiczenie.
Pozdrawiam,
Robert
Następne wpisy z tego wątku
- 28.06.10 19:12 de Fresz
- 28.06.10 19:54 Mikolaj Machowski
- 29.06.10 14:16 de Fresz
- 30.06.10 16:40 JA
- 01.07.10 09:12 de Fresz
- 01.07.10 14:55 JA
Najnowsze wątki z tej grupy
- Trochę NTG - Vegas Pro
- Nikon D5500 i wyzwalanie migawki
- Canon 550D
- EOS 600D i balans bieli w filmach
- EOS 90D i sentymenty
- Skanowanie: Canon MG2550S vs HP OfficeJet 6950
- czas exif a czas modyfikacji pliku
- karta SD po formacie odzyskiwanie zdjęć i filmów
- Chess
- Vitruvian Man - parts 7-11a
- Eltec nie zyje?
- Steve McCurry
- Light - lajkowe klasyki od Chinczykow
- Forum o Sony serii A (alfa)?
- obrobka RAW na konputerze
Najnowsze wątki
- 2025-03-15 przegląd za mną
- 2025-03-15 Na co komu okna
- 2025-03-15 Mój elektryk
- 2025-03-15 Fejk muzyczny czy nie fejk
- 2025-03-15 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-15 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-15 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-03-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+ experience) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-15 KOMU w RP3 pasuje "Rumuńska łatwość gmerania w wyborach" i dlaczego nie PO-Trzaskanym?
- 2025-03-15 China-Kraków => Key Account Manager IT <=
- 2025-03-14 Spalił się autobus :-)
- 2025-03-14 Policjanci z Piątku
- 2025-03-14 Lublin => JavaScript / Node / Fullstack Developer <=