Tagowanie obrazków – pierwszy kod

Pierwsze commity trafiły do repozytorium. Dostępo do API Tumblr’a ułatwia biblioteka TumblrSharp, dostępna oczywiście także poprzez NuGet.

Pobrałem wszystkie zdjęcia ze swojego bloga, ich nazwy to id posta w którym się znajdują (pytanie co z galeriami zdjęć…? – do sprawdzenia). Zaciągnąłem także dane JSON o wszystkich postach. Dzięki temu wiem jakimi tagami oznaczone są wpisy. Mała statystyka: na ok. 1000 postów z obrazkami

  • 71 ma tag #painting
  • 164 – #photo lub #photography
  • 67 – #graphics
  • 34 – #drawing

co daje łączną grupę testową 336 przykładów… pytanie jednak czy 34 przykłady dla grafik wystarczą?

Obserwując pobrane obrazki zacząłem zastanawiać się nad tym, co tak naprawdę odróżnia je od siebie. W przypadku grafik jest to zazwyczaj mała paleta barw oraz ostre krawędzie… To ostatnie dotyczyć może jednak także fotografii czy malarstwa hiperrealistycznego. Paleta barw monochromatyczna może być wyznacznikiem zarówno dla rysunków jak i zdjęć czarno-białych.

Skłania mnie to do wykorzystania prostej metody drzewa decyzyjnego. W najprostszej wersji najpierw odsiać można grafikę, malarstwo i zdjęcia kolorowe od zdjęć czarno-białych i rysunków (stworzonych ołówkiem, węglem lub piórem). Następnie wydzielić można grafikę ze względu na wąską paletę barw, a malarstwo od zdjęć po ostrości krawędzi. Ze względu na krawędzie oddzielić można też zdjęcia b&w oraz rysunki.

Zdaję sobie sprawę, że w każdej z kategorii istnieć będą wyjątki np. wspomniane malarstwo hiperrealistyczne czy czarno-białe grafiki. Od czegoś trzeba jednak zacząć.

Przy rozwoju projektu wykorzystam pewnie swoją poprzednią aplikację: Paletter. Przy połączeniu obu wskazany będzie refactor 😀 i poprawa architektury.