Mój bursztynowy przywódca M. już na początku tygodnia uprzedził mnie o nadchodzącym sztormie, który miał ucichnąć pod koniec tygodnia. Faktycznie wiało i do tego prawie-że-idealnie bo z północnego wchodu. W czwartek 15.10 wiatr ucichł więc pojechałem rowerem na Sobieszewo (po drodze zaglądając też na Brzeźno). Że to względnie daleko i mi się nie chciało jechać na Orle, to tym razem pojechałem na parking w Sobieszewie (wejście numer 16). Stali tam już ludzie z podbierakami, ale niewiele się jeszcze działo. Kolega M. zarządził wyjazd na wieczór...
Jak przyjechaliśmy było jeszcze szaro ale szybko zapadła noc. Fala była jeszcze duża i trzeba było uważać. Udało mi się wyłowić 17g bryłkę i parę jeszcze ładnych kawałków, po czym złamałem podbierak. Bez podbieraka nie szło już tak dobrze ale trochę dozbierałem więc generalnie byliśmy zadowoleni, zwłaszcza że w tym roku do tej pory praktycznie zero mimo kilku prób. Bursztyn wymywało dosłownie na odcinku 30m; jak przestało poszliśmy do domu. Rano w piątek 17.10 powtórka, ale było słabo. Wg. M. za duża fala była ciągle--umówiliśmy się na wieczór.
Wieczorem też nieszczególnie. Mało i małe. Wracamy do domu jest 22:00. A M. żebyśmy jechali do Mikoszewa. Ja na to że mi się nie chce, ale że namawiał to mówię OK. Pierwszy raz jedziemy na Mikoszewo ale trafiamy bez pudła-- jest 23:00 jak wychodzimy na plażę. Kupa luda. Cała plaża na fioletowo. W świetle latarki UV widać pełno leżącego na piasku bursztynu--takie kawałki wielkości pestki od jabłka albo trochę większe (i mniejsze). Są tego miliony... Większe też się trafiają ale oczywiście trzeba wejść do wody. Zbieramy do 1:00 w nocy, w domu jestem o 2:00. Mam 170g uzbierane (Sobieszewo/Mikoszewo)
W Sobotę M. nie może, jadę sam rano rowerem z kaloszami w plecaku. Primo chcę zobaczyć jak wygląda plaża bo wczoraj to byliśmy w nocy. Po drugie porobić zdjęcia mając nadzieję na dzikie tłumy + (być może) policję (pandemia jest). Przyjeżdżam 9:30-- plaża cała w śmieciach. Ludzi jest sporo ale nie aż tak za bardzo (potem doszło więcej, tyle że dużo spacerowiczów i słoikowców tj. zbieraczy okazjonalnych, bez sprzętu). Ubieram kalosze i zbieram z brzegu oraz kopię w grubej warstwie śmieci. Nb. że nie mam woderów, to akurat no-problem, bo woda jest tak mętna że i tak wszyscy co stoją w wodzie zbierają max 2m od linii brzegowej, patrząc w stronę plaży. A jest mętna, bo pływa pełno wodorostów o konsystencji rozmoczonej waty (które w świetle UV wczoraj wyglądały jak buraki, ponieważ zielony zmienia się w bordowy)
Do 13:00 w tym stylu i tym sprzętem uzbierałem 340g! Melduję M. co widziałem. Od razu chce jechać, ja mniej bo od 30 godzin na nogach! Pojechaliśmy wieczorem. Dozbierałem następnych 190g. Bursztyn ciągle wymywa i jest fala. Okruchów jest tyle na piasku, że można by do rana siedzieć i kilo uzbierać (tylko po co?)
Niedziela 18.10. Jeszcze raz do Mikoszewa. Tym razem z Elką i Jankiem. Nie ma fali. W wodzie już nic nie ma--czysta. Na brzegu jedno miejsce gdzie grubo śmieci--tam kopią i znajdują większe kawałki takie wielkości ziarnka grochu. W innych miejscach generalnie przekopana albo śmiecie odpłynęły. Mimo to 120g zebraliśmy...
Reasumując w ten szalony weekend uzbierałem 170+190+340+120 = prawie 900g bursztynu. Smak sukcesu psuje fakt, że 90% to drobnica. Inni też się obłowili sądząc po wpisach na FB grupie zbieraczy. Mocny początek sezonu.
Zdjęcia są tutaj
Dziś (drugi dzień używania) tesseract wyłożył się na względnie prostym rysunku pn. dzienny raport o koronawirusie:
tesseract 20201020T080001_raport.png 00001 ## pomija dwie pierwsze liczby, zawiera wiele nieistotnych znaków tesseract 20201020T080001_raport.png 00002 -c preserve_interword_spaces=1 --psm 6 ## prawie dobrze zdekodował liczby: ## 8 962 725 289447 44675 95956 ## ale w pliku są jeszcze inne znaki tesseract 20201020T080001_raport.png 0003 --psm 6 -c tessedit_char_whitelist=0123456789 \ -c preserve_interword_spaces=1 ## w zasadzie nic nie zmienia convert 20201020T080001_raport.png -threshold 85% raport-bw.png tesseract raport-bw.png raport-bw --psm 6 # pierwszy wiersz zamienia rysunek na b-w # tesseract działa prawie prawidłowo, tj. zwraca: # # DZIENNY RAPORT 0 KORONAWIRUSIE # ? 0 N ? # 8 962 725 289447 44675 95956 # # pierwsza liczba ma ekstra odstę convert 20201020T080001_raport.png -threshold 85% \ -morphology erode diamond raport-bw-m.png tesseract raport-bw-m.png raport-bw-m --psm 6 # DZIENNY RAPORT 0 KORONAWIRUSIE # ? \ (ae \\ (@ # 8962 725 289447 44675 95956 # a # IN. # convert 20201020T080001_raport.png -threshold 85% \ -crop 1140x75+50+400 -morphology erode diamond raport-bw-mc.png tesseract raport-bw-mc.png raport-bw-mc --psm 6 # Jeden prawidłowy wiersz # 8962 725 289447 44675 95956
Opcja -morphology erode diamond
pogruba;
opcja -crop 1140x75+50+400
wycina prostokąt 1140x75 pikseli
pomijając pierwszych 50/400 pikseli (poziom/pion).
Wartości 1140/75/50/400 znalazłem wczytując plik PNG do gimpa.
No więc wersja na dziś to nie:
## zamalowanie na biało wszystkiego nad liczbami: convert PLIK.png -draw "rectangle 0,0 1200,380" -fill white PLIK_0.png
ale:
convert PLIK.png -threshold 85% -crop 1140x75+50+400 \ -morphology erode diamond PLIK_0.png
Po odczytaniu danych są one dopisywane do pliku CSV, następnie tworzone są wykres (za pomocą R), które w ostatnim kroku są wysyłane na Twittera.
Ciekawe jak to będzie długo działać, bo mam mocne wrażenie że osoby odpowiedzialne za udostępnianie danych w MinZdrowia to amatorzy/dyletanci.
Zobacz też tutaj.
Przy okazji instalowanie tesseracta w systemie Debian to:
apt install tesseract-ocr libtesseract-dev ## poniższe jest opcjonalne: apt install tesseract-ocr-pol tesseract-ocr-eng \ tesseract-ocr-ger tesseract-ocr-deu
Że się pandemia rozwija zachciało mi się odzyskać dane podawane przez polskie Ministerstwo Zdrowia na Twitterze w formie komunikatów obrazkowych. Otóż raz dziennie o 10:00 pojawia się rysunek zawierający dane dotyczące zajętych łóżek dedykowanych COVID-19, zajętych respiratorów, liczby osób objętych kwarantanną i jeszcze dwóch innych rzeczy. Ponadto, raz na tydzień w poniedziałek pojawia się rysunek z liczbą testów w podziale na województwa. Tych danych nie ma na stronie MZ, a jeżeli są to tak publikowane, że ja nie potrafię tego odszukać. Że MZ udostępnia dane obrazkowo za pośrednictwem amerykańskiej firmy zamiast w sposób opisany ustawą o dostępnie do informacji publicznej to oczywiście skandal i żenada.
Cały stream https://twitter.com/MZ_GOV_PL to ja mam ściągnięty. Tam nie ma obrazków; są URLe do obrazków, które można łatwo pobrać. Ja to robię na raty, najpierw json do csv:
#!/usr/bin/perl # Zamiana Json -> CSV use JSON; use Time::Piece; use open ":encoding(utf8)"; use open IN => ":encoding(utf8)", OUT => ":utf8"; binmode(STDOUT, ":utf8"); print "id;date;repid;text\n"; while (<>) { chomp(); $tweet = $_; my $json = decode_json( $tweet ); $tid = $json->{"id"}; $dat = $json->{"created_at"}; $dat = Time::Piece->strptime($dat, "%a %b %d %H:%M:%S %z %Y")->strftime("%Y-%m-%dT%H:%M:%S"); $mmm = $json->{"entities"}{"media"}; ## lista-haszy for $mm ( @{$mmm} ) { $media = $mm->{media_url} ; ## id-tweeta;data;url-do-rysunku print "$tid;$dat;$media\n"; } }
Teraz można ściągnąć rysunku zwykłym wgetem albo curlem, pobierając URLa z cvsa. Rysunki o łóżkach i wentylatorach pojawiają się codziennie około 10:30 (czyli 8:30 GMT). Rysunki o liczbie testów wg województw w poniedziałki generalnie około 16:00. Więc prostym skryptem Perla ściągam poniedziałkowe rysunki opublikowane po 13:30GMT oraz wszystkie po 8:00GMT a przed 10:00GMT. Po ściągnięciu oglądam i wywalam nierelewantne.
OCR robię programem tesseract
:
tesseract PLIK.png PLIK
Powstanie PLIK.txt
a w nim tekst z rysunku.
Z danymi poniedziałkowymi był problem, tesseract
się gubił
i PLIK.txt
nic nie zawierał
Żeby mu pomóc najpierw upraszczałem rysunek:
#!/bin/bash ## pomaluj na biało fragmenty nie zawierające liczb convert "$1" -fill white -draw "rectangle 0,0 1200,115" \ -draw "rectangle 0,640 200,675" \ -draw "rectangle 350,115 830,540" PLIK_0.png ## zamień wszystkie kolory na biały za wyjątkiem czarnego: convert PLIK_0.png -fuzz 30% -fill white +opaque black PLIK_1.png ## zrób OCR tesseract PLIK_1.png PLIK_1 ## oczyść i dopisz wiersz do WYNIKI.txt grep '[0-9]' PLIK_1.txt | \ awk '{gsub(/[ \t]/, ""); l = l ";" $0 }; END{print l}' > WYNIKI.txt
Jeżeli powyższy skrypt nazywa się png2txt.sh
to teraz:
for x in *.png; do if [ -f $x ] ; then png2txt.sh $x fi done
Raporty poniedziałkowe zaczęły być wysyłane od 11 maja 2020. Raporty codzienne pobrałem od początku lipca. W szczególności rysunki `poniedziałkowe' zawierają dane kumulowane. Kiedy na podstawie tych danych utworzyłem dane `tygodniowe' (jako różnica między stanem na bieżący tydzień minus stanem na poprzedni tydzień), to dla województwa świętokrzyskiego i raportu z 10 sierpnia rezultat okazał się ujemny i do tego ogromny. Licznik cofnęło mówiąc kolokwialnie.
Po wpisaniu do google testy+świętokrzyskie
się okazało, że sprawa jest znana:
przez 2 miesiące województwo świętokrzyskie podawało dane ewidentnie
z sufitu raportując 100% wzrost tydzień/tydzień przy maksymalnym dla następnego województwa
poziomie 15%... Jak po 2 miesiącach tej twórczości doszli do absurdalnej liczby ktoś się w MZ połapał
i napisał (na Twitterze), że należy odjąć te lipne 230 tys...
No to tak z grubsza wygląda rzetelność danych n/t COVID19 w PL...
Pozyskane dane są: tutaj.
Pracowałem na WZ/UG to mnie nie dziwi. Z mediów się dowiedziałem że rektor UG okazał się marnym plagiatorem, w sumie bez dorobku (brak publikacji zagranicznych). Marnym w tym sensie także, że szedł na rympał z gołą dupą czyli z ww. żenującym dorobkiem i do tego jeszcze przepisanym w części od kogoś (szczegóły tutaj.)
Szokujące może być (ale tylko dla kogoś kto nie wie jak środowisko nauki jest zdemoralizowane, szczególnie w PL), że powyższe nie przeszkadzało wcale Radzie Wydziału Zarządzania i osobiście dziekanowi ww wydziału (chyba podwładnemu zresztą ww. Gwizdały) promować tego pana. Więcej wszystkie te opłacane przez podatnika i stojące na straży jakości instytucje typu Rada Wydziału, pierdzilion recenzentów + Centralna Komisja d/s czegoś tam jakoś nie dały rady odsiać ziarna od plew, że dopiera donos to kancelarii Prezydenta zakończył wspaniałą karierę magnificencji.