Kuvat ovat enimmäkseen "Kansatieteen kuvakokoelma"-nimisestä kokoelmasta (https://www.kuvakokoelmat.fi/pictures/search?hakuehto_1=kokoelma&hakusana_1=Kansatieteen+kuvakokoelma).
Suurin osa kuvista on suomalaisista, mutta jotkin kuvat ovat karjalaisista. Joidenkin karjalaisten kansasta olevien kuvien yhteydessä ei ole mainittu, ovatko kuvat suomalaisista vai karjalaisista, joten en viitsinyt ruveta yksitellen tarkastamaan, että mitkä kuvat ovat karjalaisista. Joukossa voi vahingossa olla myös muutamia saamelaisia, vaikka ohitin esimerkiksi monia Samuli Paulaharjun ottamia kuvia Pohjois-Suomesta, koska en ollut varma, olivatko kuvat saamelaisista.
Käytin tällaista skriptiä naamojen koordinaattien etsimiseen:
- Koodi: Valitse kaikki
import cv2
import sys
face_cascade=cv2.CascadeClassifier('/usr/local/opt/opencv/share/opencv4/haarcascades/haarcascade_frontalface_default.xml')
for a in sys.argv[1:]:
img=cv2.imread(a)
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
faces=face_cascade.detectMultiScale(gray,1.3,5)
for(x,y,w,h)in faces:
print(a,x,y,w,h)
Sitten kroppasin kuvat ajamalla tämänlaisen shellikomennon:
- Koodi: Valitse kaikki
<facecoordinates awk '{printf"%04d ",NR;print$1,1.4*$4"x"1.8*$5"+"$2-.2*$4"+"$3-.4*$5}'|parallel -C\ convert {2} -crop {3} +repage cropped/{1}.png
En valikoinut OpenCV:n löytämiä naamoja muuten kuin niin, että poistin kuvat joissa ei oikeasti ollut naamaa, ja että poistin joitain todella huonolaatuisia kuvia.
Jos joku muu aikoo ruveta lataamaan kuvia Museoviraston nettisivuilta, esimerkiksi näin saa haettua pikkukuvien URL:t Samuli Paulaharjun kuvista:
- Koodi: Valitse kaikki
for p in {1..211};do curl -s "https://www.kuvakokoelmat.fi/pictures/search?hakuehto_1=tekija&hakusana_1=%22Paulaharju+Samuli%22&page=$p"|pup '.preview attr{name}';done