← Retour à l'app← Back to app← Volver a la aplicación← Voltar ao app← Zurück zur App← Torna all’app← アプリに戻る← 返回应用
Making-of · Article technique & vulgarisation
Making-of · Technical & plain-language article
Making-of · Artículo técnico y divulgativo
Making-of · Artigo técnico & de divulgação
Making-of · Technischer & allgemeinverständlicher Artikel
Making-of · Articolo tecnico & divulgativo
メイキング · 技術解説 & やさしい解説
幕后制作 · 技术与通俗解读

Comment on a ouvert une fenêtre en temps réel sur Mars

How we opened a real-time window onto Mars

Cómo abrimos una ventana en tiempo real a Marte

Como abrimos uma janela em tempo real para Marte

Wie wir ein Echtzeit-Fenster zum Mars geöffnet haben

Come abbiamo aperto una finestra in tempo reale su Marte

火星をリアルタイムでのぞく窓を、どうやって開いたか

我们如何打开一扇实时眺望火星的窗口

Positions réelles des rovers, panoramas 360°, survols 3D du cratère Jezero, à partir de données publiques de la NASA, dans un navigateur.

Real rover positions, 360° panoramas, 3D flyovers of Jezero crater, from public NASA data, in a browser.

Posiciones reales de los rovers, panoramas 360°, sobrevuelos 3D del cráter Jezero, a partir de datos públicos de la NASA, en un navegador.

Posições reais dos rovers, panoramas 360°, sobrevoos em 3D da cratera Jezero, a partir de dados públicos da NASA, num navegador.

Echte Rover-Positionen, 360°-Panoramen, 3D-Überflüge über den Jezero-Krater, aus öffentlichen NASA-Daten, im Browser.

Posizioni reali dei rover, panorami a 360°, sorvoli in 3D del cratere Jezero, a partire dai dati pubblici della NASA, in un browser.

ローバーの実際の位置、360°パノラマ、ジェゼロ・クレーターの3D遊覧飛行。NASAの公開データから、ブラウザの中で。

火星车的真实位置、360° 全景、耶泽罗陨石坑 3D 飞越,全部基于 NASA 公开数据,在浏览器中呈现。

Baptiste Lemoigne · lemoigne.fr, projet ouvert & éducatifopen & educational projectproyecto abierto y educativoprojeto aberto & educativooffenes & lehrreiches Projektprogetto aperto & educativoオープン & 教育目的のプロジェクト开放科普项目
Autoportrait de Perseverance à « Cheyava Falls » (PIA26344) · NASA/JPL-Caltech/MSSSPerseverance self-portrait at "Cheyava Falls" (PIA26344) · NASA/JPL-Caltech/MSSSAutorretrato de Perseverance en «Cheyava Falls» (PIA26344) · NASA/JPL-Caltech/MSSSAutorretrato do Perseverance em “Cheyava Falls” (PIA26344) · NASA/JPL-Caltech/MSSSSelbstporträt von Perseverance bei „Cheyava Falls“ (PIA26344) · NASA/JPL-Caltech/MSSSAutoritratto di Perseverance a “Cheyava Falls” (PIA26344) · NASA/JPL-Caltech/MSSS「Cheyava Falls」でのPerseveranceのセルフポートレート(PIA26344)· NASA/JPL-Caltech/MSSS毅力号在 “Cheyava Falls” 的自拍(PIA26344)· NASA/JPL-Caltech/MSSS

01L'idée en une phraseThe idea in one sentenceLa idea en una fraseA ideia em uma fraseDie Idee in einem SatzL’idea in una fraseひとことで言うと一句话讲清楚这个想法

Avec Window to Mars, j'ai voulu ouvrir une fenêtre en temps réel sur la planète Mars : on y suit la position réelle des rovers (Perseverance, Curiosity) et de l'hélicoptère Ingenuity, on explore leurs panoramas 360°, et on survole le cratère Jezero en 3D, le tout à partir de données publiques de la NASA que j'ai assemblées dans un navigateur.

Mon principe directeur : ne rien inventer. Chaque position, chaque image, chaque relief vient d'une donnée scientifique réelle. Quand j'ai besoin d'une reconstruction (ciel, relief), je l'écris clairement dans les crédits.

With Window to Mars, I wanted to open a real-time window onto the planet Mars: you follow the actual positions of the rovers (Perseverance, Curiosity) and of the Ingenuity helicopter, explore their 360° panoramas, and fly over Jezero crater in 3D, all from public NASA data that I assembled inside a browser.

My guiding rule: invent nothing. Every position, image and landform comes from real scientific data. Whenever I need a reconstruction (sky, relief), I state it clearly in the credits.

Con Window to Mars quise abrir una ventana en tiempo real al planeta Marte: sigues las posiciones reales de los rovers (Perseverance, Curiosity) y del helicóptero Ingenuity, exploras sus panoramas 360° y sobrevuelas el cráter Jezero en 3D, todo a partir de datos públicos de la NASA que reuní dentro de un navegador.

Mi regla de oro: no inventar nada. Cada posición, imagen y relieve procede de datos científicos reales. Cuando necesito una reconstrucción (cielo, relieve), lo indico claramente en los créditos.

Com o Window to Mars, eu quis abrir uma janela em tempo real para o planeta Marte: você acompanha as posições reais dos rovers (Perseverance, Curiosity) e do helicóptero Ingenuity, explora seus panoramas 360° e sobrevoa a cratera Jezero em 3D, tudo a partir de dados públicos da NASA que reuni dentro de um navegador.

Minha regra de ouro: não inventar nada. Cada posição, cada imagem, cada relevo vem de dados científicos reais. Sempre que preciso de uma reconstrução (céu, relevo), deixo isso claro nos créditos.

Mit Window to Mars wollte ich ein Echtzeit-Fenster zum Planeten Mars öffnen: Du verfolgst die tatsächlichen Positionen der Rover (Perseverance, Curiosity) und des Hubschraubers Ingenuity, erkundest ihre 360°-Panoramen und überfliegst den Jezero-Krater in 3D, alles aus öffentlichen NASA-Daten, die ich im Browser zusammengeführt habe.

Meine Leitregel: nichts erfinden. Jede Position, jedes Bild und jede Geländeform stammt aus echten wissenschaftlichen Daten. Wo ich etwas rekonstruieren muss (Himmel, Relief), weise ich das in den Credits klar aus.

Con Window to Mars ho voluto aprire una finestra in tempo reale sul pianeta Marte: segui le posizioni reali dei rover (Perseverance, Curiosity) e dell’elicottero Ingenuity, esplori i loro panorami a 360° e sorvoli in 3D il cratere Jezero, il tutto a partire dai dati pubblici della NASA che ho riunito in un browser.

La mia regola d’oro: non inventare nulla. Ogni posizione, immagine e forma del rilievo proviene da dati scientifici reali. Quando mi serve una ricostruzione (cielo, rilievo), lo dichiaro chiaramente nei crediti.

Window to Mars で私が目指したのは、火星をリアルタイムでのぞく窓を開くことです。ローバー(Perseverance、Curiosity)とヘリコプターIngenuityの実際の位置を追い、360°パノラマを探索し、ジェゼロ・クレーターを3Dで遊覧飛行できます。すべて、私がブラウザの中に組み上げたNASAの公開データによるものです。

私の基本ルール:何ひとつでっち上げないこと。位置も画像も地形も、すべて実際の科学データに基づいています。再構成(空、起伏)が必要な場合は、クレジットでその旨をはっきり明記しています。

通过 Window to Mars,我想打开一扇实时眺望火星的窗口:你可以追踪火星车(毅力号、好奇号)和机智号直升机的真实位置,浏览它们拍摄的 360° 全景,并以 3D 方式飞越耶泽罗陨石坑。这一切都来自 NASA 的公开数据,由我在浏览器中整合而成。

我的指导原则:绝不虚构。每一个位置、每一张图像、每一处地形都来自真实的科学数据。凡是需要重建的部分(天空、地形起伏),我都会在致谢中明确说明。

02La pile techniqueThe tech stackLa pila tecnológicaA pilha tecnológicaDer Tech-StackLo stack tecnico技術スタック技术栈

J'ai tout fait tourner dans le navigateur, sans serveur applicatif. Je télécharge une seule fois les données lourdes (panoramas de centaines de Mo) via des scripts Python, je les redimensionne, puis je les sers en statique. Le reste (fond de carte, imagerie des survols 3D), je le charge en direct depuis les serveurs de la NASA.

I run everything in the browser, with no application server. I download the heavy assets (panoramas of hundreds of MB) once via Python scripts, resize them, then serve them statically. The rest (base map, 3D-flyover imagery) I load live from NASA servers.

Todo funciona en el navegador, sin servidor de aplicaciones. Descargo una sola vez los recursos pesados (panoramas de cientos de MB) con scripts de Python, los redimensiono y luego los sirvo de forma estática. El resto (mapa base, imágenes de los sobrevuelos 3D) lo cargo en directo desde los servidores de la NASA.

Rodo tudo no navegador, sem servidor de aplicação. Baixo os arquivos pesados (panoramas de centenas de MB) uma única vez com scripts Python, redimensiono e depois os sirvo de forma estática. O resto (mapa de base, imagens dos sobrevoos 3D) eu carrego ao vivo dos servidores da NASA.

Alles läuft bei mir im Browser, ohne Anwendungsserver. Die schweren Dateien (Panoramen von Hunderten MB) lade ich einmalig per Python-Skript herunter, skaliere sie und liefere sie dann statisch aus. Den Rest (Basiskarte, Bilddaten für die 3D-Überflüge) lade ich live von NASA-Servern.

Faccio girare tutto nel browser, senza server applicativo. Le risorse pesanti (panorami da centinaia di MB) le scarico una volta sola con script Python, le ridimensiono e poi le servo in modo statico. Il resto (mappa di base, immagini dei sorvoli 3D) lo carico in diretta dai server della NASA.

すべてをブラウザ上で動かしており、アプリケーションサーバーは使っていません。重いアセット(数百MBのパノラマ)はPythonスクリプトで一度だけダウンロードしてリサイズし、静的ファイルとして配信しています。それ以外(ベースマップ、3D遊覧飛行用の画像)はNASAのサーバーからライブで読み込んでいます。

所有内容都在浏览器中运行,没有应用服务器。体积庞大的资源(数百 MB 的全景图)我用 Python 脚本一次性下载、缩放,然后以静态方式提供。其余部分(底图、3D 飞越所用的影像)则从 NASA 服务器实时加载。

BriqueComponentComponenteComponenteKomponenteComponente構成要素组件 OutilToolHerramientaFerramentaWerkzeugStrumentoツール工具 RôleRoleFunciónFunçãoAufgabeRuolo役割作用
Carte 2D2D mapMapa 2DMapa 2D2D-KarteMappa 2D2Dマップ2D 地图Leaflet 1.9Tuiles de Mars, projection, zoom, marqueursMars tiles, projection, zoom, markersTeselas de Marte, proyección, zoom, marcadoresTiles de Marte, projeção, zoom, marcadoresMars-Kacheln, Projektion, Zoom, MarkerTile di Marte, proiezione, zoom, marcatori火星のタイル、投影法、ズーム、マーカー火星瓦片、投影、缩放、标记
Viewer 360°360° viewerVisor 360°Visualizador 360°360°-ViewerVisualizzatore 360°360°ビューアー360° 查看器Pannellum 2.5Panoramas équirectangulairesEquirectangular panoramasPanoramas equirrectangularesPanoramas equirretangularesÄquirektanguläre PanoramenPanorami equirettangolari正距円筒図法のパノラマ等距柱状投影全景图
3D temps réelReal-time 3D3D en tiempo real3D em tempo realEchtzeit-3D3D in tempo realeリアルタイム3D实时 3DThree.js r128Globe d'intro + survols aériensIntro globe + aerial flyoversGlobo de introducción + sobrevuelos aéreosGlobo de abertura + sobrevoos aéreosIntro-Globus + LuftüberflügeGlobo introduttivo + sorvoli aereiイントロの火星儀 + 空からの遊覧飛行开场地球仪 + 空中飞越
Traitement imageImage processingProcesamiento de imágenesProcessamento de imagemBildverarbeitungElaborazione delle immagini画像処理图像处理Canvas APICiel, colorisation, assemblage de tuilesSky, colorization, tile stitchingCielo, coloración, ensamblaje de teselasCéu, colorização, montagem de tilesHimmel, Kolorierung, Zusammensetzen der KachelnCielo, colorazione, assemblaggio delle tile空、着色、タイルの結合天空、着色、瓦片拼接
TéléchargementsDownloadsDescargasDownloadsDownloadsDownloadダウンロード下载Python + PillowPanoramas haute résolutionHigh-resolution panoramasPanoramas en alta resoluciónPanoramas em alta resoluçãoHochauflösende PanoramenPanorami ad alta risoluzione高解像度パノラマ高分辨率全景图

03Représenter Mars à plat : le casse-tête des projectionsShowing Mars flat: the projection puzzleMostrar Marte en plano: el rompecabezas de la proyecciónMostrar Marte no plano: o quebra-cabeça da projeçãoDen Mars flach darstellen: das ProjektionsrätselMostrare Marte in piano: il rompicapo della proiezione火星を平面に描く:投影法というパズル把火星摊平:投影难题

Mars est une sphère ; un écran est plat. Pour afficher une planète, il faut projeter la sphère sur un plan, et il existe plusieurs façons, incompatibles entre elles :

EPSG:4326 (« plate carrée ») : longitude = axe X, latitude = axe Y. Simple, mais déforme près des pôles. Web-Mercator : la projection des cartes web classiques, qui « étire » les hautes latitudes.

Le piège : deux couches dans deux projections différentes ne se superposent pas. Une image calée en Web-Mercator posée sur une carte en 4326 sera décalée. C'est le cœur du casse-tête du projet.

Mon choix : EPSG:4326, car la meilleure mosaïque nette de Mars (le CTX, ~5 m/px) est servie ainsi. La couche couleur HiRISE (25 cm/px), elle, est en Web-Mercator : je la recompose sur un canvas puis je la place aux bonnes coordonnées. Je comble les trous du CTX avec la mosaïque Viking (232 m/px).

Mars is a sphere; a screen is flat. To display a planet you must project the sphere onto a plane, and there are several, mutually incompatible ways:

EPSG:4326 ("plate carrée"): longitude = X axis, latitude = Y axis. Simple, but distorts near the poles. Web-Mercator: the projection of classic web maps, which "stretches" high latitudes.

The catch: two layers in two different projections don't line up. An image aligned in Web-Mercator laid over a 4326 map will be offset. This is the heart of the project's puzzle.

My choice: EPSG:4326, because the sharpest Mars mosaic (CTX, ~5 m/px) is served that way. The HiRISE color layer (25 cm/px) is in Web-Mercator: I recompose it on a canvas then place it at the right coordinates. I fill CTX gaps with the Viking mosaic (232 m/px).

Marte es una esfera; una pantalla es plana. Para mostrar un planeta hay que proyectar la esfera sobre un plano, y existen varias maneras, incompatibles entre sí:

EPSG:4326 («plate carrée»): longitud = eje X, latitud = eje Y. Sencilla, pero deforma cerca de los polos. Web-Mercator: la proyección de los mapas web clásicos, que «estira» las latitudes altas.

La trampa: dos capas en dos proyecciones distintas no coinciden. Una imagen alineada en Web-Mercator superpuesta a un mapa en 4326 quedará desplazada. Ese es el núcleo del rompecabezas del proyecto.

Mi elección: EPSG:4326, porque el mosaico de Marte más nítido (CTX, ~5 m/px) se sirve así. La capa en color de HiRISE (25 cm/px) está en Web-Mercator: la recompongo en un canvas y luego la sitúo en las coordenadas correctas. Relleno los huecos de CTX con el mosaico Viking (232 m/px).

Marte é uma esfera; uma tela é plana. Para exibir um planeta é preciso projetar a esfera num plano, e há várias maneiras, incompatíveis entre si:

EPSG:4326 (“plate carrée”): longitude = eixo X, latitude = eixo Y. Simples, mas distorce perto dos polos. Web-Mercator: a projeção dos mapas web clássicos, que “estica” as altas latitudes.

O problema: duas camadas em duas projeções diferentes não se alinham. Uma imagem alinhada em Web-Mercator sobreposta a um mapa em 4326 fica deslocada. É o cerne do quebra-cabeça do projeto.

Minha escolha: EPSG:4326, porque o mosaico mais nítido de Marte (CTX, ~5 m/px) é servido assim. A camada colorida HiRISE (25 cm/px) está em Web-Mercator: eu a recomponho num canvas e depois a posiciono nas coordenadas certas. Preencho as lacunas do CTX com o mosaico Viking (232 m/px).

Der Mars ist eine Kugel, ein Bildschirm ist flach. Um einen Planeten darzustellen, muss man die Kugel auf eine Ebene projizieren, und dafür gibt es mehrere, untereinander unvereinbare Wege:

EPSG:4326 („Plate carrée“): Länge = X-Achse, Breite = Y-Achse. Einfach, aber verzerrt in Polnähe. Web-Mercator: die Projektion klassischer Webkarten, die hohe Breiten „streckt“.

Der Haken: Zwei Ebenen in zwei verschiedenen Projektionen passen nicht übereinander. Ein in Web-Mercator ausgerichtetes Bild auf einer 4326-Karte ist verschoben. Das ist der Kern des Rätsels in diesem Projekt.

Meine Wahl: EPSG:4326, weil das schärfste Mars-Mosaik (CTX, ~5 m/px) so ausgeliefert wird. Die HiRISE-Farbebene (25 cm/px) liegt in Web-Mercator vor: Ich setze sie auf einem Canvas neu zusammen und platziere sie dann an den richtigen Koordinaten. Lücken im CTX fülle ich mit dem Viking-Mosaik (232 m/px).

Marte è una sfera; uno schermo è piatto. Per visualizzare un pianeta bisogna proiettare la sfera su un piano, e ci sono diversi modi, incompatibili tra loro:

EPSG:4326 (“plate carrée”): longitudine = asse X, latitudine = asse Y. Semplice, ma deforma vicino ai poli. Web-Mercator: la proiezione delle classiche mappe web, che “stira” le alte latitudini.

Il problema: due livelli in due proiezioni diverse non combaciano. Un’immagine allineata in Web-Mercator sovrapposta a una mappa in 4326 risulterà sfalsata. È questo il cuore del rompicapo del progetto.

La mia scelta: EPSG:4326, perché il mosaico di Marte più nitido (CTX, ~5 m/px) viene servito così. Il livello a colori HiRISE (25 cm/px) è in Web-Mercator: lo ricompongo su un canvas e poi lo posiziono alle coordinate giuste. Riempio le lacune di CTX con il mosaico Viking (232 m/px).

火星は球体で、画面は平面です。惑星を表示するには、球を平面に投影しなければなりません。その方法はいくつもあり、互いに両立しません。

EPSG:4326(「正距円筒図法」):経度 = X軸、緯度 = Y軸。シンプルですが、極の近くでゆがみます。Web-Mercator:一般的なウェブ地図の投影法で、高緯度を「引き伸ばし」ます。

落とし穴は、異なる投影法の2つのレイヤーは重ならないことです。Web-Mercatorで位置合わせした画像を4326の地図に重ねると、ずれてしまいます。これがこのプロジェクトのパズルの核心です。

私の選択はEPSG:4326。火星で最も鮮明なモザイク(CTX、約5 m/px)がこの形式で配信されているからです。HiRISEのカラーレイヤー(25 cm/px)はWeb-Mercatorなので、canvas上で再構成してから正しい座標に配置しています。CTXの欠けている部分はVikingモザイク(232 m/px)で補っています。

火星是球体,屏幕却是平面。要显示一颗行星,就必须把球面投影到平面上,而投影方式有好几种,彼此互不兼容:

EPSG:4326(“等距圆柱投影”):经度 = X 轴,纬度 = Y 轴。简单,但在两极附近会变形。Web-Mercator:常见网络地图所用的投影,会“拉伸”高纬度地区。

问题在于:两个投影不同的图层无法对齐。一张按 Web-Mercator 对齐的图像叠加到 4326 地图上,就会出现偏移。这正是本项目难题的核心。

我的选择:EPSG:4326,因为最清晰的火星镶嵌图(CTX,约 5 m/px)就是以这种投影提供的。HiRISE 彩色图层(25 cm/px)采用 Web-Mercator:我先在 canvas 上重新拼合,再放到正确的坐标上。CTX 的空缺处则用 Viking 镶嵌图(232 m/px)补齐。

04Les cartes essayées puis abandonnéesMaps we tried and droppedMapas que probamos y descartamosMapas que testamos e descartamosKarten, die ich ausprobiert und verworfen habeMappe provate e scartate試してみて、見送った地図尝试过又放弃的地图

J'ai exploré beaucoup de sources. Voici l'historique honnête de mes essais, impasses comprises, souvent le plus instructif.

I explored many sources. Here's the honest history of what I tried, dead ends included, often the most instructive part.

Exploré muchas fuentes. Esta es la historia sincera de lo que probé, callejones sin salida incluidos, que a menudo son lo más instructivo.

Explorei muitas fontes. Eis o histórico honesto do que testei, becos sem saída incluídos, muitas vezes a parte mais instrutiva.

Ich habe viele Quellen erkundet. Hier die ehrliche Geschichte dessen, was ich ausprobiert habe, Sackgassen inklusive, oft der lehrreichste Teil.

Ho esplorato molte fonti. Ecco la storia onesta di ciò che ho provato, vicoli ciechi compresi, spesso la parte più istruttiva.

さまざまなソースを試しました。ここでは、行き止まりも含めて、試したことを正直にまとめます。そこにこそ、いちばんの学びがあることが多いのです。

我探索过很多数据源。下面如实记录我尝试过的一切,包括走过的死胡同,而这往往是最有启发的部分。

SourceSourceFuenteFonteQuelleFonteソース数据源 VerdictVerdictVeredictoVereditoUrteilEsito判定结论 RaisonReasonMotivoMotivoGrundMotivo理由原因
Mosaïque CTXCTX mosaicMosaico CTXMosaico CTXCTX-MosaikMosaico CTXCTXモザイクCTX 镶嵌图 ~5 m/px✅Nette, fiable, servie en 4326, CORS ouvertSharp, reliable, served in 4326, CORS-openNítido, fiable, servido en 4326, con CORS abiertoNítido, confiável, servido em 4326, CORS abertoScharf, zuverlässig, in 4326 ausgeliefert, CORS-offenNitido, affidabile, servito in 4326, aperto al CORS鮮明で信頼性が高く、4326で配信、CORS対応清晰、可靠,以 4326 提供,开放 CORS
HiRISE couleurHiRISE colorHiRISE en colorHiRISE coloridoHiRISE in FarbeHiRISE a coloriHiRISEカラーHiRISE 彩色 25 cm/px✅Résolution exceptionnelle (corridor + texture 3D)Outstanding resolution (corridor + 3D texture)Resolución excepcional (corredor + textura 3D)Resolução excepcional (corredor + textura 3D)Herausragende Auflösung (Korridor + 3D-Textur)Risoluzione eccezionale (corridoio + texture 3D)抜群の解像度(走行ルート周辺 + 3Dテクスチャ)分辨率极高(行进走廊 + 3D 纹理)
Viking MDIM21✅Comble les trous du CTX (couleur globale)Fills CTX gaps (global color)Rellena los huecos de CTX (color global)Preenche as lacunas do CTX (cor global)Füllt CTX-Lücken (globale Farbe)Riempie le lacune di CTX (colore globale)CTXの欠けを補う(全球カラー)补齐 CTX 空缺(全球彩色)
MNT MOLA globalGlobal MOLA DEMMDE global de MOLAMDE global MOLAGlobales MOLA-DEMDEM MOLA globaleMOLA全球DEM全球 MOLA DEM✕Trop grossier : Jezero ≈ 3 pixels de largeToo coarse: Jezero ≈ 3 pixels wideDemasiado burdo: Jezero ≈ 3 píxeles de anchoGrosseiro demais: Jezero ≈ 3 pixels de larguraZu grob: Jezero ≈ 3 Pixel breitTroppo grossolano: Jezero ≈ 3 pixel di larghezza粗すぎる:ジェゼロは幅およそ3ピクセル太粗糙:耶泽罗陨石坑只有约 3 个像素宽
Trek subset / WMTS DEM✕Endpoints en 404, pas de CORS en direct404 endpoints, no live CORSEndpoints con error 404, sin CORS en directoEndpoints com 404, sem CORS ao vivo404-Endpunkte, kein Live-CORSEndpoint in 404, niente CORS in direttaエンドポイントが404、ライブでのCORS非対応端点返回 404,无法实时跨域(CORS)
MNT HiRISE de JezeroJezero HiRISE DEMMDE HiRISE de JezeroMDE HiRISE de JezeroHiRISE-DEM von JezeroDEM HiRISE di JezeroジェゼロのHiRISE DEM耶泽罗 HiRISE DEM✕Fichier source unique de ~10 GoSingle ~10 GB source fileUn único archivo fuente de ~10 GBUm único arquivo-fonte de ~10 GBEinzelne Quelldatei von ~10 GBUn unico file sorgente da ~10 GB約10 GBの単一ソースファイル单个源文件约 10 GB
Panoramas FU BerlinFU Berlin panoramasPanoramas de la FU BerlinPanoramas da FU BerlinPanoramen der FU BerlinPanorami della FU BerlinFUベルリンのパノラマFU Berlin 全景图✕Format tuiles non récupérable + reconstructions protégées (droits)Tile format not retrievable + copyrighted reconstructionsFormato de teselas no recuperable + reconstrucciones protegidas por derechos de autorFormato de tiles impossível de recuperar + reconstruções protegidas por direitos autoraisKachelformat nicht abrufbar + urheberrechtlich geschützte RekonstruktionenFormato delle tile non recuperabile + ricostruzioni protette da copyrightタイル形式を取得できない + 著作権で保護された再構成瓦片格式无法获取 + 重建成果受版权保护
La leçon clé : le relief fin de Jezero (un vrai MNT HiRISE) n'est pas récupérable proprement en ligne. J'ai donc reconstruit un relief plausible à partir de l'ombrage de l'imagerie, que je crédite honnêtement comme reconstruction, pas comme altimétrie mesurée.Key lesson: the fine relief of Jezero (a real HiRISE DEM) isn't cleanly retrievable online. So I reconstructed a plausible relief from the imagery's own shading, which I honestly credit as a reconstruction, not measured elevation.Lección clave: el relieve fino de Jezero (un verdadero MDE de HiRISE) no se puede obtener limpiamente en línea. Así que reconstruí un relieve plausible a partir del sombreado de las propias imágenes, y lo acredito con honestidad como una reconstrucción, no como una altimetría medida.Lição principal: o relevo fino de Jezero (um MDE HiRISE real) não pode ser obtido online de forma limpa. Por isso reconstruí um relevo plausível a partir do próprio sombreamento das imagens, que credito honestamente como reconstrução, e não como altimetria medida.Wichtigste Lehre: Das feine Relief von Jezero (ein echtes HiRISE-DEM) ist online nicht sauber abrufbar. Deshalb habe ich aus der Schattierung der Bilder selbst ein plausibles Relief rekonstruiert, das ich ehrlich als Rekonstruktion ausweise, nicht als gemessene Höhe.Lezione chiave: il rilievo fine di Jezero (un vero DEM HiRISE) non è recuperabile in modo pulito online. Così ho ricostruito un rilievo plausibile a partire dall’ombreggiatura delle immagini stesse, che dichiaro onestamente come ricostruzione, non come altitudine misurata.重要な教訓:ジェゼロの細かな起伏(本物のHiRISE DEM)は、オンラインではきれいに取得できません。そこで画像そのものの陰影からもっともらしい起伏を再構成し、実測の標高ではなく再構成であることを正直にクレジットしています。关键教训:耶泽罗陨石坑的精细地形(真正的 HiRISE DEM)无法在线干净地获取。于是我根据影像自身的明暗重建了一个合理的地形起伏,并如实注明这是重建结果,而非实测高程。

05Tracer les déplacements des trois explorateursTracing the three explorersTrazar a los tres exploradoresTraçando os três exploradoresDie Spuren der drei ErkunderTracciare i tre esploratori3機の探査機の軌跡を描く描绘三位探索者的轨迹

Trois engins, trois jeux de coordonnées réelles : Perseverance (64 étapes, sols 13→1921), Curiosity (61 étapes, sols 3→4957), Ingenuity (73 vols, 0→72).

Un tracé joli sans le fausser

Relier des points par des segments droits donne un tracé anguleux. J'utilise donc une spline de Catmull-Rom centripète : une courbe qui passe exactement par tous les points réels, mais avec des transitions douces, et qui, en version « centripète », évite les boucles et dépassements dans les virages serrés (piège classique des Bézier naïves). Le tracé est joli mais fidèle : jamais je ne fais passer l'engin là où il n'est pas allé.

Three craft, three sets of real coordinates: Perseverance (64 waypoints, sols 13→1921), Curiosity (61 waypoints, sols 3→4957), Ingenuity (73 flights, 0→72).

A pretty trace without falsifying it

Joining points with straight segments looks jagged. So I use a centripetal Catmull-Rom spline: a curve passing exactly through every real point, but with smooth transitions, and, in its "centripetal" form, avoiding loops and overshoot on sharp turns (a classic trap of naive Béziers). The trace is pretty but faithful: I never route the craft through a place it didn't visit.

Tres vehículos, tres conjuntos de coordenadas reales: Perseverance (64 puntos de paso, soles 13→1921), Curiosity (61 puntos de paso, soles 3→4957), Ingenuity (73 vuelos, 0→72).

Un trazado bonito sin falsearlo

Unir los puntos con segmentos rectos da un resultado quebrado. Por eso uso una spline de Catmull-Rom centrípeta: una curva que pasa exactamente por cada punto real, pero con transiciones suaves y que, en su forma «centrípeta», evita bucles y desbordamientos en los giros cerrados (una trampa clásica de las Bézier ingenuas). El trazado es bonito pero fiel: nunca hago pasar a un vehículo por un lugar que no visitó.

Três veículos, três conjuntos de coordenadas reais: Perseverance (64 pontos de passagem, sóis 13→1921), Curiosity (61 pontos de passagem, sóis 3→4957), Ingenuity (73 voos, 0→72).

Um traçado bonito sem falsificá-lo

Ligar os pontos com segmentos retos fica serrilhado. Por isso uso uma spline Catmull-Rom centrípeta: uma curva que passa exatamente por cada ponto real, mas com transições suaves e, na sua forma “centrípeta”, evitando laços e ultrapassagens nas curvas fechadas (uma armadilha clássica das Béziers ingênuas). O traçado é bonito mas fiel: nunca faço um veículo passar por um lugar onde ele não esteve.

Drei Fahr- und Flugzeuge, drei Sätze echter Koordinaten: Perseverance (64 Wegpunkte, Sols 13→1921), Curiosity (61 Wegpunkte, Sols 3→4957), Ingenuity (73 Flüge, 0→72).

Eine schöne Spur, ohne sie zu verfälschen

Punkte mit geraden Segmenten zu verbinden, wirkt zackig. Deshalb verwende ich einen zentripetalen Catmull-Rom-Spline: eine Kurve, die exakt durch jeden echten Punkt verläuft, aber mit weichen Übergängen, und die in ihrer „zentripetalen“ Form in scharfen Kurven Schleifen und Überschwinger vermeidet (eine klassische Falle naiver Bézierkurven). Die Spur ist schön, aber getreu: Ich führe ein Fahrzeug nie über einen Ort, an dem es nicht war.

Tre veicoli, tre serie di coordinate reali: Perseverance (64 tappe, sol 13→1921), Curiosity (61 tappe, sol 3→4957), Ingenuity (73 voli, 0→72).

Una traccia elegante senza falsificarla

Unire i punti con segmenti rettilinei dà un risultato spigoloso. Per questo uso una spline di Catmull-Rom centripeta: una curva che passa esattamente per ogni punto reale, ma con transizioni morbide e, nella sua forma “centripeta”, senza anelli né sbordature nelle curve strette (una classica trappola delle Bézier ingenue). La traccia è elegante ma fedele: non faccio mai passare un veicolo da un luogo che non ha visitato.

3機の探査機、3組の実際の座標:Perseverance(64地点、ソル13→1921)、Curiosity(61地点、ソル3→4957)、Ingenuity(73回の飛行、0→72)。

データをゆがめずに、きれいな軌跡を

点を直線でつなぐと、ギザギザに見えます。そこでセントリペタル Catmull-Rom スプラインを使っています。実際のすべての点をぴったり通る曲線でありながら、つなぎ目はなめらかで、さらに「セントリペタル(向心)」型では、急なカーブでのループやオーバーシュートを防げます(単純なベジェ曲線によくある落とし穴です)。軌跡はきれいで、しかも忠実です。探査機が訪れていない場所を通らせることは決してありません。

三台探测器,三组真实坐标:毅力号(64 个航点,第 13→1921 个火星日),好奇号(61 个航点,第 3→4957 个火星日),机智号(73 次飞行,0→72)。

轨迹漂亮,但不失真

用直线段连接各点,轨迹会显得棱角分明。所以我采用向心 Catmull-Rom 样条:这条曲线精确经过每一个真实点,同时过渡平滑;而且在“向心”形式下,它能在急转弯处避免打圈和过冲(这是朴素贝塞尔曲线的经典陷阱)。轨迹漂亮,但忠实:我绝不会让探测器经过它没去过的地方。

06Les panoramas 360°The 360° panoramasLos panoramas 360°Os panoramas 360°Die 360°-PanoramenI panorami a 360°360°パノラマ360° 全景

Perseverance, Mastcam-Z (52 panoramas) : les panoramas 360° officiels, sols 3 à 1775, de vraies photos NASA affichées telles quelles.

Curiosity, Mastcam (25 panoramas) : j'en ai recensé sur toute la mission, du sol 2 (atterrissage) au sol 4741, avec Rocknest (« milliard de pixels »), dune de Namib, Murray Buttes, Vera Rubin Ridge, Glen Torridon (« 1,8 milliard de pixels »)… J'identifie chacun par son numéro PIA, je le géolocalise par interpolation sur le tracé réel, et je le récupère en haute résolution (originaux > 29 000 px) via un script multi-sources.

Perseverance, Mastcam-Z (52 panoramas): the official 360° panoramas, sols 3 to 1775, real NASA photos shown as-is.

Curiosity, Mastcam (25 panoramas): I compiled these across the whole mission, from sol 2 (landing) to sol 4741, with Rocknest (the "billion-pixel"), Namib Dune, Murray Buttes, Vera Rubin Ridge, Glen Torridon (the "1.8-billion-pixel")… I identify each by its PIA number, geolocate it by interpolation on the real track, and fetch it in high resolution (originals > 29,000 px) via a multi-source script.

Perseverance, Mastcam-Z (52 panoramas): los panoramas 360° oficiales, de los soles 3 a 1775, fotos reales de la NASA mostradas tal cual.

Curiosity, Mastcam (25 panoramas): los recopilé a lo largo de toda la misión, desde el sol 2 (aterrizaje) hasta el sol 4741, con Rocknest (el de «mil millones de píxeles»), Namib Dune, Murray Buttes, Vera Rubin Ridge, Glen Torridon (el de «1800 millones de píxeles»)… Identifico cada uno por su número PIA, lo geolocalizo por interpolación sobre la trayectoria real y lo obtengo en alta resolución (originales de > 29 000 px) mediante un script multifuente.

Perseverance, Mastcam-Z (52 panoramas): os panoramas 360° oficiais, dos sóis 3 a 1775, fotos reais da NASA exibidas tal como são.

Curiosity, Mastcam (25 panoramas): reuni estes ao longo de toda a missão, do sol 2 (pouso) ao sol 4741, com Rocknest (o “de um bilhão de pixels”), Namib Dune, Murray Buttes, Vera Rubin Ridge, Glen Torridon (o “de 1,8 bilhão de pixels”)… Identifico cada um pelo seu número PIA, geolocalizo-o por interpolação no trajeto real e o baixo em alta resolução (originais > 29.000 px) com um script multifonte.

Perseverance, Mastcam-Z (52 Panoramen): die offiziellen 360°-Panoramen, Sol 3 bis 1775, echte NASA-Fotos, unverändert gezeigt.

Curiosity, Mastcam (25 Panoramen): Diese habe ich über die gesamte Mission zusammengetragen, von Sol 2 (Landung) bis Sol 4741, mit Rocknest (dem „Milliarden-Pixel“-Panorama), Namib Dune, Murray Buttes, Vera Rubin Ridge, Glen Torridon (dem „1,8-Milliarden-Pixel“-Panorama)… Ich identifiziere jedes über seine PIA-Nummer, verorte es per Interpolation auf der echten Route und lade es über ein Skript mit mehreren Quellen in hoher Auflösung (Originale > 29.000 px).

Perseverance, Mastcam-Z (52 panorami): i panorami ufficiali a 360°, dal sol 3 al sol 1775, vere foto NASA mostrate così come sono.

Curiosity, Mastcam (25 panorami): li ho raccolti lungo tutta la missione, dal sol 2 (atterraggio) al sol 4741, con Rocknest (quello da “un miliardo di pixel”), Namib Dune, Murray Buttes, Vera Rubin Ridge, Glen Torridon (quello da “1,8 miliardi di pixel”)… Identifico ciascuno dal suo numero PIA, lo geolocalizzo per interpolazione sul percorso reale e lo recupero in alta risoluzione (originali > 29.000 px) tramite uno script multi-sorgente.

Perseverance、Mastcam-Z(52枚のパノラマ):公式の360°パノラマで、ソル3からソル1775まで。NASAの実際の写真をそのまま表示しています。

Curiosity、Mastcam(25枚のパノラマ):ミッション全体を通して、ソル2(着陸)からソル4741まで、私自身が集めました。Rocknest(「10億ピクセル」)、Namib Dune、Murray Buttes、Vera Rubin Ridge、Glen Torridon(「18億ピクセル」)など……。それぞれをPIA番号で特定し、実際の走行ルート上で補間して位置を割り出し、複数のソースを使うスクリプトで高解像度版(元画像は > 29,000 px)を取得しています。

毅力号,Mastcam-Z(52 幅全景):官方 360° 全景,第 3 至 1775 个火星日,NASA 真实照片,原样呈现。

好奇号,Mastcam(25 幅全景):这些是我在整个任务期间收集整理的,从第 2 个火星日(着陆)到第 4741 个火星日,其中包括 Rocknest(“十亿像素”全景)、Namib Dune、Murray Buttes、Vera Rubin Ridge、Glen Torridon(“18 亿像素”全景)……我用 PIA 编号识别每一幅,在真实路线上插值为其定位,再通过多源脚本获取高分辨率版本(原图 > 29,000 px)。

Panorama 360° — Curiosity
Exemple de panorama Mastcam de Curiosity. Crédit : NASA/JPL-Caltech/MSSS.
Example Curiosity Mastcam panorama. Credit: NASA/JPL-Caltech/MSSS.
Ejemplo de panorama Mastcam de Curiosity. Crédito: NASA/JPL-Caltech/MSSS.
Exemplo de panorama Mastcam do Curiosity. Crédito: NASA/JPL-Caltech/MSSS.
Beispiel eines Mastcam-Panoramas von Curiosity. Bildnachweis: NASA/JPL-Caltech/MSSS.
Esempio di panorama Mastcam di Curiosity. Credito: NASA/JPL-Caltech/MSSS.
Curiosity Mastcamのパノラマの例。クレジット:NASA/JPL-Caltech/MSSS。
好奇号 Mastcam 全景示例。图片来源:NASA/JPL-Caltech/MSSS。

07Ingenuity : vraies photos + survols 3D « maison »Ingenuity: real photos + home-made 3D flyoversIngenuity: fotos reales + sobrevuelos 3D caserosIngenuity: fotos reais + sobrevoos 3D caseirosIngenuity: echte Fotos + selbstgebaute 3D-ÜberflügeIngenuity: foto reali + sorvoli 3D fatti in casaIngenuity:実際の写真 + 自作の3D遊覧飛行机智号:真实照片 + 自制 3D 飞越

Ingenuity est un hélicoptère : il n'a jamais pris de panoramas 360° au sol. J'ai donc combiné, dans sa section, 5 vraies photos aériennes couleur (caméra RTE, géolocalisées par vol) et 8 survols aériens 360° que j'ai reconstruits en 3D.

Comment je fabrique un survol

1. Texture = imagerie réelle. À l'ouverture, je vais chercher en direct les tuiles HiRISE couleur (25 cm/px) autour du point de vol et je les assemble (~2,3 km de terrain).
2. Relief = reconstruit depuis l'ombrage. Le vrai MNT n'étant pas accessible, je dérive un relief basse fréquence de la luminance (l'ombrage encode les pentes), que je lisse pour éviter tout faux pic.
3. Rendu = Three.js. Terrain drapé, lumière rasante (bump map), ciel martien, brume d'horizon ; caméra à l'altitude du vol, regard 360°.

Mon cheminement : j'ai d'abord utilisé la mosaïque CTX (~5 m/px), trop pixelisée. Puis je suis passé à la HiRISE (25 cm/px), ~20× plus de détail, au prix d'une zone plus resserrée. Résultat : rides éoliennes, strates du delta et champs de blocs deviennent nets.

Ingenuity is a helicopter: it never took ground-level 360° panoramas. So in its section I combined 5 real color aerial photos (RTE camera, geolocated by flight) and 8 aerial 360° flyovers that I reconstructed in 3D.

How I build a flyover

1. Texture = real imagery. On opening, I fetch live the HiRISE color tiles (25 cm/px) around the flight point and stitch them (~2.3 km of terrain).
2. Relief = reconstructed from shading. Since the real DEM isn't reachable, I derive a low-frequency relief from luminance (shading encodes slopes), which I smooth to avoid false peaks.
3. Rendering = Three.js. Draped terrain, raking light (bump map), Martian sky, horizon haze; camera at flight altitude, 360° look-around.

My path of choices: I first used the CTX mosaic (~5 m/px), too pixelated. Then I switched to HiRISE (25 cm/px), ~20× more detail, at the cost of a tighter footprint. The result: aeolian ripples, delta strata and boulder fields become crisp.

Ingenuity es un helicóptero: nunca tomó panoramas 360° a ras de suelo. Así que en su sección combiné 5 fotos aéreas reales en color (cámara RTE, geolocalizadas por vuelo) y 8 sobrevuelos aéreos 360° que reconstruí en 3D.

Cómo construyo un sobrevuelo

1. Textura = imágenes reales. Al abrirlo, obtengo en directo las teselas en color de HiRISE (25 cm/px) alrededor del punto de vuelo y las ensamblo (~2,3 km de terreno).
2. Relieve = reconstruido a partir del sombreado. Como el MDE real no es accesible, deduzco un relieve de baja frecuencia a partir de la luminancia (el sombreado codifica las pendientes), que suavizo para evitar falsos picos.
3. Renderizado = Three.js. Terreno drapeado, luz rasante (bump map), cielo marciano, bruma en el horizonte; cámara a la altitud de vuelo, vista giratoria de 360°.

Mi recorrido de decisiones: primero usé el mosaico CTX (~5 m/px), demasiado pixelado. Luego pasé a HiRISE (25 cm/px), unas 20× más detalle, a costa de una cobertura más reducida. Resultado: las ondulaciones eólicas, los estratos del delta y los campos de bloques se vuelven nítidos.

O Ingenuity é um helicóptero: ele nunca fez panoramas 360° ao nível do solo. Por isso, na sua seção, combinei 5 fotos aéreas reais em cores (câmera RTE, geolocalizadas por voo) e 8 sobrevoos aéreos 360° que reconstruí em 3D.

Como construo um sobrevoo

1. Textura = imagens reais. Na abertura, busco ao vivo os tiles coloridos HiRISE (25 cm/px) em torno do ponto de voo e os monto (~2,3 km de terreno).
2. Relevo = reconstruído a partir do sombreamento. Como o MDE real não está acessível, derivo um relevo de baixa frequência a partir da luminância (o sombreamento codifica as inclinações), que suavizo para evitar picos falsos.
3. Renderização = Three.js. Terreno drapeado, luz rasante (bump map), céu marciano, névoa no horizonte; câmera na altitude de voo, visão 360° ao redor.

O caminho das minhas escolhas: primeiro usei o mosaico CTX (~5 m/px), pixelado demais. Depois passei para o HiRISE (25 cm/px), ~20× mais detalhes, ao custo de uma área coberta menor. O resultado: ondulações eólicas, estratos do delta e campos de blocos rochosos ficam nítidos.

Ingenuity ist ein Hubschrauber: Er hat nie 360°-Panoramen vom Boden aus aufgenommen. Deshalb habe ich in seinem Bereich 5 echte farbige Luftbilder (RTE-Kamera, pro Flug verortet) und 8 Luft-Überflüge in 360°, die ich in 3D rekonstruiert habe, kombiniert.

Wie ich einen Überflug baue

1. Textur = echte Bilddaten. Beim Öffnen lade ich live die HiRISE-Farbkacheln (25 cm/px) rund um den Flugpunkt und setze sie zusammen (~2,3 km Gelände).
2. Relief = aus der Schattierung rekonstruiert. Da das echte DEM nicht erreichbar ist, leite ich aus der Helligkeit ein niederfrequentes Relief ab (die Schattierung kodiert die Hangneigung), das ich glätte, um falsche Gipfel zu vermeiden.
3. Rendering = Three.js. Aufgelegtes Gelände, Streiflicht (Bump-Map), Marshimmel, Dunst am Horizont; Kamera auf Flughöhe, Rundumblick in 360°.

Mein Weg der Entscheidungen: Zuerst nutzte ich das CTX-Mosaik (~5 m/px), zu pixelig. Dann wechselte ich zu HiRISE (25 cm/px), ~20× mehr Details, dafür mit kleinerem Ausschnitt. Das Ergebnis: Windrippel, Deltaschichten und Geröllfelder werden gestochen scharf.

Ingenuity è un elicottero: non ha mai scattato panorami a 360° dal suolo. Così, nella sua sezione, ho combinato 5 vere foto aeree a colori (fotocamera RTE, geolocalizzate per volo) e 8 sorvoli aerei a 360° che ho ricostruito in 3D.

Come costruisco un sorvolo

1. Texture = immagini reali. All’apertura recupero in diretta le tile HiRISE a colori (25 cm/px) attorno al punto del volo e le assemblo (~2,3 km di terreno).
2. Rilievo = ricostruito dall’ombreggiatura. Poiché il vero DEM non è raggiungibile, ricavo un rilievo a bassa frequenza dalla luminanza (l’ombreggiatura codifica le pendenze), che poi smusso per evitare falsi picchi.
3. Rendering = Three.js. Terreno drappeggiato, luce radente (bump map), cielo marziano, foschia all’orizzonte; telecamera all’altitudine di volo, sguardo a 360°.

Il percorso delle mie scelte: all’inizio ho usato il mosaico CTX (~5 m/px), troppo pixelato. Poi sono passato a HiRISE (25 cm/px), ~20× più dettagliato, al prezzo di un’area coperta più ristretta. Il risultato: increspature eoliche, strati del delta e campi di massi diventano nitidi.

Ingenuityはヘリコプターなので、地上からの360°パノラマは一度も撮影していません。そこでIngenuityのセクションでは、5枚の実際のカラー空撮写真(RTEカメラ、飛行ごとに位置を特定)と、私が3Dで再構成した8本の360°遊覧飛行を組み合わせました。

遊覧飛行の作り方

1. テクスチャ = 実際の画像。表示時に、飛行地点周辺のHiRISEカラータイル(25 cm/px)をライブで取得し、つなぎ合わせます(約2.3 kmの範囲)。
2. 起伏 = 陰影から再構成。本物のDEMにはアクセスできないため、輝度から低周波の起伏を導き出し(陰影は斜面の情報を含んでいます)、偽のピークが出ないようにならしています。
3. レンダリング = Three.js。地形にテクスチャを貼り、斜光(バンプマップ)、火星の空、地平線のかすみを加えます。カメラは飛行高度に置き、360°見回せます。

選択の道のり:最初はCTXモザイク(約5 m/px)を使いましたが、ピクセルが目立ちすぎました。そこでHiRISE(25 cm/px)に切り替え、表示範囲は狭くなるものの、ディテールは約20倍になりました。その結果、風紋、三角州の地層、岩塊の散らばる地帯がくっきりと見えるようになりました。

机智号是一架直升机:它从未在地面拍摄过 360° 全景。因此在它的板块中,我组合了 5 张真实的彩色航拍照片(RTE 相机,按飞行次数定位)和 8 段由我用 3D 重建的 360° 空中飞越。

我如何制作一段飞越

1. 纹理 = 真实影像。打开时,我实时获取飞行点周围的 HiRISE 彩色瓦片(25 cm/px)并拼接起来(约 2.3 km 范围的地形)。
2. 地形 = 由明暗重建。由于无法获取真实 DEM,我从亮度中推导出低频地形起伏(明暗反映了坡度),并加以平滑,以免出现虚假的尖峰。
3. 渲染 = Three.js。覆盖纹理的地形、掠射光(凹凸贴图)、火星天空、地平线雾霭;相机位于飞行高度,可 360° 环视。

我的选择历程:我最初使用 CTX 镶嵌图(约 5 m/px),像素感太强。随后改用 HiRISE(25 cm/px),细节多出约 20 倍,代价是覆盖范围更小。结果:风成波纹、三角洲地层和巨石区都变得清晰锐利。

08Reconstruire un ciel martienRebuilding a Martian skyReconstruir un cielo marcianoReconstruindo um céu marcianoEinen Marshimmel rekonstruierenRicostruire un cielo marziano火星の空を再構成する重建火星天空

Les panoramas de la NASA arrivent souvent avec un cache noir en haut (la caméra ne photographie pas le zénith). J'ai écrit une fonction qui détecte ce cache, échantillonne la vraie couleur du ciel au-dessus de l'horizon, la remplace par un dégradé beige/rosé cohérent, et bouche colonne par colonne les trous résiduels. Enfin, je fais démarrer la vue centrée sur le sol/l'horizon pour mettre en avant le paysage réel.

NASA panoramas often arrive with a black matte at the top (the camera doesn't shoot the zenith). I wrote a function that detects it, samples the true sky color above the horizon, replaces it with a coherent beige/pink gradient, and fills residual holes column by column. Finally, I open the view centered on the ground/horizon to foreground the real landscape.

Los panoramas de la NASA suelen llegar con una franja negra en la parte superior (la cámara no fotografía el cenit). Escribí una función que la detecta, toma muestras del color real del cielo por encima del horizonte, la sustituye por un degradado beige/rosado coherente y rellena los huecos restantes columna por columna. Por último, abro la vista centrada en el suelo/horizonte para dar protagonismo al paisaje real.

Os panoramas da NASA costumam chegar com uma faixa preta no topo (a câmera não fotografa o zênite). Escrevi uma função que a detecta, amostra a verdadeira cor do céu acima do horizonte, a substitui por um degradê bege/rosado coerente e preenche os buracos restantes coluna por coluna. Por fim, abro a visão centrada no solo/horizonte para destacar a paisagem real.

NASA-Panoramen kommen oft mit einer schwarzen Maske oben an (die Kamera nimmt den Zenit nicht auf). Ich habe eine Funktion geschrieben, die sie erkennt, die echte Himmelsfarbe über dem Horizont abtastet, sie durch einen stimmigen beige-rosa Verlauf ersetzt und verbleibende Lücken Spalte für Spalte füllt. Zum Schluss öffne ich die Ansicht auf Boden und Horizont zentriert, um die echte Landschaft in den Vordergrund zu rücken.

I panorami della NASA arrivano spesso con una banda nera in alto (la fotocamera non riprende lo zenit). Ho scritto una funzione che la rileva, campiona il vero colore del cielo sopra l’orizzonte, la sostituisce con un gradiente beige/rosa coerente e riempie i buchi residui colonna per colonna. Infine, apro la vista centrata sul suolo/orizzonte per mettere in primo piano il paesaggio reale.

NASAのパノラマは、上部が黒く塗りつぶされた状態で届くことがよくあります(カメラが天頂を撮影しないためです)。そこで、これを検出し、地平線の上の本物の空の色をサンプリングして、自然なベージュ/ピンクのグラデーションに置き換え、残った穴を列ごとに埋める関数を書きました。最後に、実際の風景が主役になるよう、地面/地平線を中心にビューを開くようにしています。

NASA 全景图顶部常常带有一块黑色遮罩(相机不拍天顶)。我写了一个函数来检测它,在地平线上方采样真实的天空颜色,用协调的米色/粉色渐变替换黑色区域,并逐列填补残留的空洞。最后,我让视图打开时以地面/地平线为中心,突出真实的地貌。

09Crédits & sourcesCredits & sourcesCréditos y fuentesCréditos & fontesCredits & QuellenCrediti & fontiクレジット & 出典致谢与来源

Toute l'imagerie provient de missions publiques. La NASA est créditée comme source ; ces crédits n'impliquent aucun endossement du projet par la NASA ou ses partenaires.

All imagery comes from public missions. NASA is credited as the source; these credits imply no endorsement of the project by NASA or its partners.

Todas las imágenes proceden de misiones públicas. Se cita a la NASA como fuente; estos créditos no implican ningún respaldo del proyecto por parte de la NASA ni de sus socios.

Todas as imagens vêm de missões públicas. A NASA é creditada como fonte; estes créditos não implicam nenhum endosso do projeto pela NASA ou por seus parceiros.

Alle Bilddaten stammen aus öffentlichen Missionen. Die NASA wird als Quelle genannt; diese Credits bedeuten keine Billigung des Projekts durch die NASA oder ihre Partner.

Tutte le immagini provengono da missioni pubbliche. La NASA è citata come fonte; questi crediti non implicano alcun sostegno al progetto da parte della NASA o dei suoi partner.

すべての画像は公開されたミッションのものです。NASAを出典として明記していますが、これらのクレジットはNASAやそのパートナーによる本プロジェクトの支持を意味するものではありません。

所有影像均来自公开任务。NASA 被注明为数据来源;这些致谢并不意味着 NASA 或其合作伙伴对本项目的认可。

CTX, NASA/JPL/MSSS/The Murray Lab (Caltech) · HiRISE, NASA/JPL/Univ. Arizona · Viking MDIM21, NASA/USGS · MOLA, NASA/GSFC · Mastcam-Z, NASA/JPL-Caltech/ASU/MSSS · Mastcam & Navcam, NASA/JPL-Caltech/MSSS · Ingenuity RTE, NASA/JPL-Caltech

10Licence, éthique & démarche éducativeLicense, ethics & educational missionLicencia, ética y misión educativaLicença, ética & missão educativaLizenz, Ethik & BildungsauftragLicenza, etica & missione educativaライセンス、倫理 & 教育という使命许可、伦理与科普使命

Window to Mars est un projet ouvert, à visée éducative : je veux rendre l'exploration de Mars accessible à partir de données scientifiques réelles. Trois principes ont guidé chacune de mes décisions :

1. Fidélité aux données. Je n'invente ni position, ni image, ni relief.
2. Transparence des reconstructions. Je crédite explicitement le ciel et le relief 3D comme des reconstructions.
3. Respect du travail d'autrui. J'ai renoncé aux panoramas de FU Berlin plutôt que de ré-héberger le travail 3D d'une autre équipe.

Le sol martien, un choix personnel. Scientifiquement, chaque mission compte ses « sols » (jours martiens) à partir de son atterrissage : le jour de l'arrivée sur Mars est le sol 0, et chaque mission a donc son propre sol 0. Il n'existe pas de « sol universel ». Pour Window to Mars, j'ai fait un choix arbitraire et personnel : en tant que créateur, j'ai ancré l'horloge martienne de l'application sur ma propre date de naissance, le 26 mai 1982. Le sol affiché est donc le nombre de jours martiens écoulés depuis ma naissance, une signature discrète.
Conception assistée par IA. J'ai conçu et développé ce projet avec l'aide de Claude (Anthropic), modèle Claude Opus 4.8, qui a contribué à l'exploration des sources de données. La direction artistique, la stratégie de développement, une partie du code et la mise au point des reconstructions sont de moi. Les décisions finales et la responsabilité du projet restent les miennes.

Window to Mars is an open, educational project: I want to make the exploration of Mars accessible from real scientific data. Three principles guided every one of my decisions:

1. Faithfulness to the data. I invent no position, image or landform.
2. Transparency about reconstructions. I explicitly credit the sky and 3D relief as reconstructions.
3. Respect for others' work. I gave up FU Berlin's panoramas rather than re-host another team's 3D work.

The Martian sol, a personal choice. Scientifically, each mission counts its "sols" (Martian days) from its landing: the day of arrival on Mars is sol 0, so every mission has its own sol 0. There is no "universal sol". For Window to Mars, I made an arbitrary, personal choice: as the creator, I anchored the app's Martian clock to my own birth date, 26 May 1982. The sol shown is therefore the number of Martian days elapsed since I was born, a quiet signature.
AI-assisted design. I designed and built this project with the help of Claude (Anthropic), model Claude Opus 4.8, which contributed to exploring the data sources. The art direction, development strategy, part of the code and refining the reconstructions are my own. The final decisions and responsibility for the project remain mine.

Window to Mars es un proyecto abierto y educativo: quiero hacer accesible la exploración de Marte a partir de datos científicos reales. Tres principios guiaron cada una de mis decisiones:

1. Fidelidad a los datos. No invento ninguna posición, imagen ni relieve.
2. Transparencia sobre las reconstrucciones. Acredito explícitamente el cielo y el relieve 3D como reconstrucciones.
3. Respeto por el trabajo ajeno. Renuncié a los panoramas de la FU Berlin antes que volver a alojar el trabajo 3D de otro equipo.

El sol marciano, una elección personal. Científicamente, cada misión cuenta sus «soles» (días marcianos) desde su aterrizaje: el día de llegada a Marte es el sol 0, así que cada misión tiene su propio sol 0. No existe un «sol universal». Para Window to Mars tomé una decisión arbitraria y personal: como creador, anclé el reloj marciano de la aplicación a mi propia fecha de nacimiento, el 26 de mayo de 1982. El sol que se muestra es, por tanto, el número de días marcianos transcurridos desde que nací, una firma discreta.
Diseño asistido por IA. Diseñé y construí este proyecto con la ayuda de Claude (Anthropic), modelo Claude Opus 4.8, que contribuyó a explorar las fuentes de datos. La dirección artística, la estrategia de desarrollo, parte del código y el perfeccionamiento de las reconstrucciones son obra mía. Las decisiones finales y la responsabilidad del proyecto siguen siendo mías.

O Window to Mars é um projeto aberto e educativo: quero tornar a exploração de Marte acessível a partir de dados científicos reais. Três princípios guiaram cada uma das minhas decisões:

1. Fidelidade aos dados. Não invento nenhuma posição, imagem ou relevo.
2. Transparência sobre as reconstruções. Credito explicitamente o céu e o relevo 3D como reconstruções.
3. Respeito ao trabalho alheio. Abri mão dos panoramas da FU Berlin em vez de hospedar novamente o trabalho 3D de outra equipe.

O sol marciano, uma escolha pessoal. Cientificamente, cada missão conta seus “sóis” (dias marcianos) a partir do pouso: o dia da chegada a Marte é o sol 0, então cada missão tem o seu próprio sol 0. Não existe um “sol universal”. Para o Window to Mars, fiz uma escolha arbitrária e pessoal: como criador, ancorei o relógio marciano do app na minha própria data de nascimento, 26 de maio de 1982. O sol exibido é, portanto, o número de dias marcianos decorridos desde que nasci, uma assinatura discreta.
Design assistido por IA. Concebi e construí este projeto com a ajuda do Claude (Anthropic), modelo Claude Opus 4.8, que contribuiu para a exploração das fontes de dados. A direção de arte, a estratégia de desenvolvimento, parte do código e o refinamento das reconstruções são de minha autoria. As decisões finais e a responsabilidade pelo projeto continuam sendo minhas.

Window to Mars ist ein offenes, lehrreiches Projekt: Ich möchte die Erkundung des Mars anhand echter wissenschaftlicher Daten zugänglich machen. Drei Grundsätze haben jede meiner Entscheidungen geleitet:

1. Treue zu den Daten. Ich erfinde keine Position, kein Bild und keine Geländeform.
2. Transparenz bei Rekonstruktionen. Himmel und 3D-Relief weise ich ausdrücklich als Rekonstruktionen aus.
3. Respekt vor der Arbeit anderer. Auf die Panoramen der FU Berlin habe ich verzichtet, statt die 3D-Arbeit eines anderen Teams erneut zu hosten.

Der Mars-Sol, eine persönliche Wahl. Wissenschaftlich zählt jede Mission ihre „Sols“ (Marstage) ab ihrer Landung: Der Tag der Ankunft auf dem Mars ist Sol 0, jede Mission hat also ihren eigenen Sol 0. Einen „universellen Sol“ gibt es nicht. Für Window to Mars habe ich eine willkürliche, persönliche Wahl getroffen: Als Schöpfer habe ich die Marsuhr der App an mein eigenes Geburtsdatum geknüpft, den 26. Mai 1982. Der angezeigte Sol ist also die Zahl der Marstage seit meiner Geburt, eine stille Signatur.
KI-gestützte Gestaltung. Ich habe dieses Projekt mit Unterstützung von Claude (Anthropic) entworfen und gebaut, Modell Claude Opus 4.8, das bei der Erkundung der Datenquellen mitgewirkt hat. Die künstlerische Leitung, die Entwicklungsstrategie, ein Teil des Codes und die Verfeinerung der Rekonstruktionen stammen von mir. Die endgültigen Entscheidungen und die Verantwortung für das Projekt liegen bei mir.

Window to Mars è un progetto aperto ed educativo: voglio rendere accessibile l’esplorazione di Marte a partire da dati scientifici reali. Tre principi hanno guidato ognuna delle mie decisioni:

1. Fedeltà ai dati. Non invento nessuna posizione, immagine o forma del rilievo.
2. Trasparenza sulle ricostruzioni. Dichiaro esplicitamente il cielo e il rilievo 3D come ricostruzioni.
3. Rispetto per il lavoro altrui. Ho rinunciato ai panorami della FU Berlin piuttosto che ripubblicare il lavoro 3D di un altro gruppo.

Il sol marziano, una scelta personale. Scientificamente, ogni missione conta i propri “sol” (giorni marziani) dall’atterraggio: il giorno dell’arrivo su Marte è il sol 0, quindi ogni missione ha il suo sol 0. Non esiste un “sol universale”. Per Window to Mars ho fatto una scelta arbitraria e personale: in quanto creatore, ho ancorato l’orologio marziano dell’app alla mia data di nascita, il 26 maggio 1982. Il sol mostrato è quindi il numero di giorni marziani trascorsi dalla mia nascita, una firma discreta.
Progettazione assistita dall’IA. Ho progettato e realizzato questo progetto con l’aiuto di Claude (Anthropic), modello Claude Opus 4.8, che ha contribuito a esplorare le fonti di dati. La direzione artistica, la strategia di sviluppo, parte del codice e il perfezionamento delle ricostruzioni sono opera mia. Le decisioni finali e la responsabilità del progetto restano mie.

Window to Mars はオープンで教育目的のプロジェクトです。実際の科学データをもとに、火星探査を誰にでも身近なものにしたいと考えています。私のあらゆる判断は、3つの原則に基づいています。

1. データへの忠実さ。位置も画像も地形も、何ひとつでっち上げません。
2. 再構成についての透明性。空と3Dの起伏は、再構成であることを明記しています。
3. 他者の仕事への敬意。別のチームの3D作品を再ホストするよりも、FUベルリンのパノラマを見送ることを選びました。

火星のソル、個人的な選択。科学的には、各ミッションは着陸日から「ソル」(火星の1日)を数えます。火星に到着した日がソル0なので、ミッションごとに独自のソル0があり、「共通のソル」は存在しません。Window to Mars では、私は恣意的で個人的な選択をしました。制作者として、アプリの火星時計を自分の誕生日、1982年5月26日に合わせたのです。つまり表示されるソルは、私が生まれてから経過した火星日の数であり、ひそやかな署名なのです。
AIの支援を受けた設計。このプロジェクトは、Claude(Anthropic)のモデル Claude Opus 4.8 の助けを借りて設計・構築しました。Claudeはデータソースの探索に貢献してくれました。アートディレクション、開発戦略、コードの一部、そして再構成の仕上げは私自身によるものです。最終的な判断とプロジェクトの責任は、私にあります。

Window to Mars 是一个开放的科普项目:我希望借助真实的科学数据,让人人都能接触火星探索。我的每一个决定都遵循三条原则:

1. 忠于数据。我不虚构任何位置、图像或地形。
2. 重建部分公开透明。我明确注明天空和 3D 地形属于重建内容。
3. 尊重他人的成果。我放弃了 FU Berlin 的全景图,而不是转载另一个团队的 3D 作品。

火星日:一个个人选择。在科学上,每个任务都从着陆起计算自己的“火星日”(sol):抵达火星的那天是第 0 个火星日,因此每个任务都有各自的第 0 天。并不存在“通用火星日”。在 Window to Mars 中,我做了一个随意而私人的选择:作为创作者,我把应用的火星时钟锚定在我自己的出生日期,1982 年 5 月 26 日。因此,页面上显示的火星日就是我出生以来经过的火星日数,算是一个低调的签名。
AI 辅助设计。我在 Claude(Anthropic)的帮助下设计并构建了这个项目,所用模型为 Claude Opus 4.8,它协助我探索了各类数据源。艺术指导、开发策略、部分代码以及重建效果的打磨均由我本人完成。最终决定和项目责任仍由我承担。
« Une fenêtre ouverte sur une autre planète. »
"A window open onto another planet."
«Una ventana abierta a otro planeta.»
“Uma janela aberta para outro planeta.”
„Ein Fenster, geöffnet zu einem anderen Planeten.“
“Una finestra aperta su un altro pianeta.”
「もうひとつの惑星へ開かれた窓。」
“一扇向另一颗星球敞开的窗。”
Baptiste Lemoigne · lemoigne.fr · Window to Mars