У меня есть карта all-sky HEALPix, из базы данных AKARI Far Infrared Surveyor databse (публично выпущена). Я попытался «сгладить» карту, используя healpy
, но результат выглядит очень странно. Есть ли способ лучше? Однако мой вопрос относится к любой карте HEALPix всех неба (например, IRAS, Planck, WISE, WMAP).Сглаживание карт HEALPix с `healpy`: Почему выходная карта выглядит« пятнистой »?
Моя цель - «сгладить» эффективную функцию распределения по точкам этой карты AKARI с угловым разрешением 1 градуса (исходные данные имеют значение PSF около 1 дуги). Это так, что я могу сравнить карту дальнего инфракрасного АКАРИ с микроволновыми картами с более низким разрешением (в частности, аномальные микроволновые области ).
В моем примере ниже я использую ухудшенную версию карты, поэтому она будет достаточно мала, чтобы загружать ее в Github. Это означает, что пиксели составляют около 3,42 минуты. Я бы не ухудшать масштаб пикселя так, прежде, чем PSF сглаживающий, normally-, но это всего лишь пример:
#Load the packages needed for visualization, and HEALPix processing
%matplotlib inline
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
import healpy as hp
import healpy.projector as pro
#Loads the HEALPix .FITS file into an array
map_in = hp.read_map("akari_WideL_1_1024.fits", nest = True)
#Visualizes the all-sky map, before any processing is done.
hp.mollview(map_in, title='AKARI All-Sky Map:', nest = True, norm = 'hist')
#Smoothes the map with a 1-degree FWHM Gaussian (fwhm given in radians).
map_out = hp.sphtfunc.smoothing(map_out, fwhm = 0.017, iter = 1)
#Visualizes the the map after smoothing
hp.mollview(map_out, title='AKARI All-Sky Map:', nest = True, norm = 'hist')
Я попытался healpy.sphtfunct.smoothing рутина (https://healpy.readthedocs.org/en/latest/generated/healpy.sphtfunc.smoothing.html#healpy.sphtfunc.smoothing).As насколько я понимаю, smoothing
новообращенных отображение в сферические гармоники, затем свертывается с гауссовым, а затем преобразует его обратно в пространственную карту.
Я сохранил ноутбук ipython, а также карту low-res .FITS HEALpix в репозитории github, здесь :
https://github.com/aaroncnb/healpy_smoothing_test
(Вы должны будете иметь healpy
установленный пакет)
Запустив код в блокноте, вы можете легко визуализировать проблемы я having- после сглаживания карты, есть некоторые странные «артефакты» , как если бы пиксели были итерационно усреднены по шкале, а не сглажены круговым гуассианским профилем. То, что я ожидаю увидеть, это просто более грубая версия входной карты.
Я думаю, что мне не хватает чего-то принципиального в преобразовании в сферические гармоники, прежде чем сглаживание будет выполнено.
Неужели кто-нибудь пытался сделать это сглаживание всего неба до, на карте HEALPix?
Я считаю, что другой вариант - преобразовать карту в стандартный прямоугольный массив, а затем провести сглаживание. Однако мне остается любопытно решить проблему, не выходя из формата HEALPix.