TechLife devBlog

Maj 2009

Dziwne struktury na powierzchni Marsa

Inne 26 maja 2009 20:15

Na wstępie zaznaczę, że sprawa nie jest najnowsza, pierwsze wzmianki o dziwnych strukturach opisane były już w 2005 roku. Jednak do tej pory temat jest mało znany choć w mojej opinii szalenie ciekawy, dlatego postanowiłem go opisać.

Cała historia dotyczy Marsa a dokładnie krateru Hale (150km x 120km)
Mapa Marsa

W 2005 roku sonda Mars Express Orbiter, wystrzelona 2 lata wcześniej przez Europejską Agencję Kosmiczną ESA, przesłała na Ziemię swoje pierwsze zdjęcia powierzchni czerwonej planety jakie wykonała za pomocą znajdującej się na pokładzie wysokiej klasy aparatury (dokładność do 10 m).

Zdjęcia możecie znaleźć sami w galerii ESA szukając pod hasłem hale crater.

Na pierwszy rzut oka są to zdjęcia jak każde inne, wszędzie tylko pustka i skały. Ale tylko do momentu aż zobaczymy powiększenie. Weźmy na ten przykład zdjęcie zatytułowane Crater Hale in perspective, looking west. Kiedy spojrzymy na środkowy obszar dolnej części zdjęcia bez większego trudu powinniśmy znaleźć tam coś w rodzaju pikseli.

wstep-1

wstep-2

Aby polepszyć sobie jakość obrazu wystarczy prosty zabieg przyciemnienia obrazu i zwiększenia kontrastu (ja posłużyłem się Gimpem).

wstep-3

Tak, wiem. Na pierwszy rzut oka jest to trudne do przyjęcia. Szukamy szybko w głowach wyjaśnień typu błędy matrycy czy jakieś szumy na zdjęciu. Musimy sobie jednak przypomnieć, że zdjęcia te nie były wykonywane aparatem z promocji w Tesco. Mars Express Orbiter wyposażony był w aparaturę zdolną robić zdjęcia topograficzne z dokładnością do 10 metrów a nawet zdjęcia warstw podpowierzchniowych (co było jednym z głównych celów misji). Natomiast obiekty widoczne na zdjęciu mają rozmiary sięgające kilku kilometrów! O czymś naturalnym nie może być mowy ponieważ jak wiadomo linie proste, kąty proste, czy prostokąty nie występują w naturze, tym bardziej w takiej ilości i obok siebie.

Ktoś inny może powiedzieć, że są to po prostu piksele powstałe w wyniku stratnej kompresji zdjęcia do formatu JPG. Powiedzmy, że można by się zgodzić z tą teorią jeżeli dysponowalibyśmy wyłącznie pojedynczym zdjęciem. Jednak do dyspozycji mamy kilka zdjęć więc teoria o kompresji jest chybiona co łatwo udowodnić.

Zdjęcie 1: Crater Hale in perspective, looking west

zdjecie-1

zdjecie-1-powiekszenie

Na tym zdjęciu zaznaczyłem kilka charakterystycznych obiektów

zdjecie-1-obiekty

Zdjęcie 2: Crater Hale in perspective, looking north-west

zdjecie-2

zdjecie-2-powiekszenie

Jak widać poniżej na zdjęciu wykonanym pod innym kątem obiekty te również widzimy pod innym kątem a więc wszelkie przekłamania pojedynczego zdjęcia są wykluczone. Poza tym dwa obiekty po lewej stronie zdjęcia wykazują perspektywę zgodną z nachyleniem zbocza. A więc to musi być coś na powierzchni!

zdjecie-2-obiekty

Zdjęcie 3 TIFF 9,4 MB: Crater Hale in Argyre basin

To zdjęcie dostępne jest w formacie TIFF a więc zostało skompresowane bezstratnie! Co prawda obejmuje o wiele większy obszar jednak i tak wspomniane obiekty możemy odnaleźć

zdjecie-3

zdjecie-3-powiekszenie

zdjecie-3-obiekty

To nie jedyne dziwne zdjęcia z Marsa ale na pewno bardzo ciekawe, zwłaszcza że można sprawdzić je samemu. Zainteresowanym polecam również stronę marsanomalyresearch.com, gdzie można znaleźć o wiele więcej analiz oraz dziwnych zdjęć typu zamazane obiekty na środku zdjęcia, znikające marsjańskie skały czy bezczelnie przerobione zdjęcia powierzchni na zasadzie kopiuj-wklej.

Źródła:

Python i jQuery czyli pyquery

Kodowanie, Python, Techblog 4 maja 2009 15:51

Ostatnio wpadł mi w ręce bardzo ciekawy moduł Pythona, który śmiało można określić jako jQuery po stronie serwera. Jeżeli potrzebowaliście kiedyś wyciągnąć jakieś dane z kodu HTML-a i denerwowała was zabawa z parsowaniem kodu za pomocą sgmllib czy innego tego typu wynalazku, to wasze cierpienia właśnie się skończyły.

Jak to działa?

Na początek pobierzemy zawartość jakieś strony, z której chcemy wyciągnąć dane. Ja posłużę się stroną antyweb.pl, ponieważ jest całkiem przystępnie zakodowana.

from pyquery import PyQuery as pq
import urllib

html = urllib.urlopen("http://antyweb.pl").read()
html = pq(html)

Teraz wystarczy już zadecydować co chcemy wyciągnąć i po prostu to zrobić :-) Np. informacje o autorze

print  html("#f li.frt").text()

Wynik:

Witaj, nazywam sie Grzegorz Marczak i jestem autorem tego bloga. Piszę tutaj o serwisach spolecznosciowych, nowych technologiach i nowych trendach w internecie.

Wyciągnięcie wszystkich kategorii

for a in html("li.categories a"):
    print a.text

Wynik:

antytydzień Biała flaga
Ciekawe strony
google
Świat
Miniblog
Mobilnie
Moje przemyślenia
Off topic
polska
Pytamy.pl
Startups
To mnie drażni.
Uncategorized
W trakcie tworzenia
wywiady

Wyszukanie najczęściej komentowanego wpisu ze strony głównej

max_comments = 0
title = ''
for a in html("ul.clnn li.l a"):
    try:
        # liczba komentarzy
        comments = int(a.text.split(" ")[1])
        if max_comments < comments:
            max_comments = comments
            # nazwa wpisu
            title = a.values()[1].replace("Komentarze do wpisu ",'')
    except:
        pass

print "Najwiecej komentarzy: %s" % max_comments
print "Wpis: %s" % title

Wynik:

Najwiecej komentarzy: 32
Wpis: Interia mówi, tak kupujemy ruch (bo inni też tak robią)

Więcej

To oczywiście tylko mała próbka możliwości. pyquery pozwala również na manipulację stylami (addClass, toggleClass, removeClass, attr, css) czy samą strukturą danych (append, prepend, prependTo, insertAfter, remove, replaceWith itd.). Jeżeli posiadamy moduł WebOb możemy też zaprzęgnąć do pracy Ajax.

Po więcej informacji zapraszam na stronę projektu pyquery.