Development of sparse coding and reconstruction subsystems for astronomical imaging
Autor(a) principal: | |
---|---|
Data de Publicação: | 2019 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10451/37722 |
Resumo: | Tese de mestrado integrado Engenharia Física, Universidade de Lisboa, Faculdade de Ciências, 2019 |
id |
RCAP_7c7335169f271f1409948535cd4ff507 |
---|---|
oai_identifier_str |
oai:repositorio.ul.pt:10451/37722 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Development of sparse coding and reconstruction subsystems for astronomical imagingAmostragem comprimidaAstronomiaCOSACDMDHadamardTeses de mestrado - 2019Domínio/Área Científica::Ciências Naturais::Ciências FísicasTese de mestrado integrado Engenharia Física, Universidade de Lisboa, Faculdade de Ciências, 2019Amostragem comprimida (CS) é uma técnica revolucionária de processamento de sinal que nos permite recuperar completamente toda a informação de um sinal contornando os limites de amostragem impostos às técnicas convencionais, sendo para isto necessário que exista uma base de representação onde este sinal seja esparso, i.e. onde esse possa ser comprimido. Desde muito cedo após a sua elaboração, em 2006, até ao seu desenvolvimento e propagação nos anos seguintes que CS possibilitou o desenvolvimento de novas abordagens em fotografia, holografia e instrumentação para a medicina, entre outros. No entanto, apenas recentemente tem sido demonstrado algum interesse em levar a aplicação desta técnica para fora do laboratório. Continuando a partir dos trabalhos desenvolvidos previamente por Bandarra e Pires nas suas respectivas dissertações de mestrado, serão aqui descritos os avanços realizados neste projecto com vista ao desenvolvimento de um instrumento portátil, com aplicação prática fora do laboratório que utilize a abordagem CS; uma camara de amostragem comprimida para astronomia (COSAC). Este instrumento foi projectado para ser constituído por cinco subsistemas: óptico mecânico, de codificação de sinal, electrónica de aquisição, de recuperação de sinal e estrutura mecânica (caixa e suporte aos restantes subsistemas). O trabalho realizado focou-se no desenvolvimento/implementação dos subsistemas de codificação e recuperação de sinal, sendo ainda proposto um protótipo rudimentar para a estrutura mecânica de modo a poder integrar todos os subsistemas e assim testar o instrumento fora do laboratório; isto levou a um redesenho dos suportes óptico mecânicos. Adicionalmente, foram realizadas algumas alterações à electrónica de aquisição com a finalidade de melhorar o comportamento desta e também facilitar a integração deste subsistema com o de codificação de sinal; como resultado, são propostos dois circuitos funcionais, um utilizando o um ADC de 10 bits, o outro utilizando um ADC de 24 bits. Como subproduto do desenvolvimento destes circuitos é ainda apresentada uma shield com conversor de 24 bits para Arduino Uno. A componente central deste instrumento, que estabelece ligação entre os subsistemas óptico mecânico, de codificação de sinal e o de aquisição, é um digital micromirror device (DMD), uma rede de micro-espelhos independentes que podem assumir uma de duas inclinações opostas. Este dispositivo pode ser, e é, utilizado para estruturar luz, estando presente, actualmente, em grande parte do equipamento de projecção. Para este projecto foi utilizado um DLP LightCrafter, um projector/kit de desenvolvimento produzido pela Texas Instruments que inclui um DMD, sendo este responsável pela codificação de sinais. Testando a electrónica de aquisição, verificou-se que: o alcance dinâmico desta não estava totalmente aproveitado; algumas ligações realizadas entre uma das componentes e o micro-controlador Arduino, responsável pela gestão dos procedimentos necessários à realização de medições, impossibilitavam o estabelecimento de sincronismo entre os dois; o desenho da placa de circuito impresso (PCB) não estava optimizado em relação à topologia do Arduino e às ligações necessárias entre os dois. Algumas correções aos problemas atrás mencionados são aqui propostas, tendo sido alteradas ligações e um módulo do circuito, tendo sido redesenhado o PCB de modo a este possa encaixar nos terminais do Arduino, e tendo sido acrescentado um terminal de modo a poder estabelecer comunicação TTL entre o Arduino e o LightCrafter. O subsistema de codificação de sinal é constituído pelo LightCrafter, e dois programas: um, escrito em C/C++ e a ser executado num PC (DMD-CS.cpp), cujos propósitos são controlar o DMD, comunicar com o processador do LightCrafter e ainda comunicar com o controlador Arduino anteriormente mencionado; o segundo (que é partilhado com o subsistema de aquisição), escrito em linguagem de Arduino e a ser executado num (pIDDO.ino), que irá activar e desactivar as portas lógicas - dos circuito integrados (IC) presentes - necessárias a que o processo de efectuar uma medição seja realizado com sucesso, e comunicará com o PC; a interacção entre ambos os programas é essencial para garantir o sincronismo entre os subsistemas de codificação e de aquisição. Escolheu-se, para codificar o sinal a ser medido, como bases de representação, matrizes quadradas de Hadamard, podendo estas ser construídas através de simples algoritmos. De modo a poupar recursos computacionais, desenvolveu-se um algoritmo que recebendo como entrada o rank da matriz e o índice referente a uma linha desta constrói apenas essa linha. As linhas assim geradas serão posteriormente manipuladas de modo a serem utilizadas como padrões de configuração para as inclinações dos micro-espelhos, sendo que o conjunto destas linhas/padrões definirá a nossa matriz de amostragem; o método utilizado para configurar o DMD implica a transferência destes padrões codificados em formato de imagem bitmap (BMP), pelo que foram aqui criadas as funções necessárias a manipular a informação destes padrões de modo a ser interpretada do modo desejado pelo processador do LightCrafter. Cada um dos programas previamente mencionados irá gerar um ficheiro de saída: DMD-CS.cpp gerará um ficheiro contendo informação sobre a matriz de amostragem; já o ficheiro gerado por pIDDO.ino irá conter os resultados das medições realizadas pela electrónica de aquisição. As funções e instruções escritas para gerir a comunicação entre o PC e o LightCrafter são uma implementação simplificada do código da interface gráfica deste. O programa permitirá ao utilizador definir o rank da matriz de Hadamard a utilizar, o número de linhas, desta, a serem geradas e o tempo que deverá demorar cada aquisição. O subsistema de reconstrução de sinal é outro programa que, a partir dos ficheiros gerados pelos programas DMD-CS.cpp e pIDDO.ino, reconstrói o sinal real implementando um algoritmo de optimização, desenvolvido originalmente por Romberg. Este programa gera um ficheiro de imagem BMP com o resultado, numa escala de tons de cinza. As peças para o protótipo do subsistema estrutural e para os suportes óptico mecânicos foram desenhadas usando software de desenho assistido por computador (CAD), no qual também foram realizadas simulações de elementos finitos para garantir que tanto as peças como a estrutura são capazes de manter a sua integridade em condições reais de utilização. Algumas das peças foram compradas, as restantes foram produzidas no laboratório - tendo sido impressas em resina fotopolimérica por uma impressora 3D estereolitográfica - ou em oficinas - tendo sido maquinadas em alumínio com recurso a fresadoras de controlo numérico e de controlo numérico por computador (CNC), entre outras ferramentas. O protótipo foi desenhado tendo como objectivo ser possível anexá-lo a uma montagem telescópica equatorial comum. Todos os subsistemas foram primeiro testados individualmente e, posteriormente testaram-se em pares: o subsistema de codificação e o de aquisição, para garantir que o encadeamento de processos entre os dois estava sincronizado; o subsistema de óptico mecânico e o de aquisição, para focar os sinais de entrada primeiro na região de interesse do DMD e, após reflexão, no detector utilizado. Os subsistemas foram depois montados na estrutura para formar o COSAC. O instrumento foi calibrado, analisado e validado, usando ambas as versões do circuito de aquisição, em laboratório, sob condições de luminosidade controladas. São também apresentados resultados comparativos do desempenho do COSAC utilizando três modos de aquisição distintos (varrimento, óptica de transformadas de Hadamard e CS utilizando matrizes de Hadamard como base). Foi demonstrado que o COSAC é capaz de produzir imagens, no espectro visível, resultantes de medições em modo CS com, no mínimo, 64_64 pixéis de resolução.Compressed sensing (CS) is a revolutionary signal processing technique that allows us, under a specific set of conditions, to fully reconstruct an under-sampled signal. Very early, from its inception, in 2006, to subsequent development and propagation in the following years compressed sensing enabled advancements in photography, holography and medical instrumentation among others. Its application in astronomy however, even though some calls to action have recently been made, has failed to leave the test bed. Continuing from the work developed by Bandarra and Pires in their respective Masters’ dissertations, advancements will here be described on the development of a physical, out of the table, instrument; a compressed sensing astronomy camera (COSAC). Such an instrument was projected to be constituted by five subsystems: optomechanics, signal coding, acquisition electronics, signal reconstruction and the mechanical structure (casing and inner supports for the aforementioned subsystems). The present work focused on the development/implementation of signal coding and reconstruction subsystems, while a simple prototype for the mechanical structure is also proposed to enable testing the instrument in a real world setting; this required the redesign of the optomechanical supports. Additionally, some changes were made to the acquisition electronics in order to not only improve its behavior, but to also facilitate its integration with the signal coding subsystem; as a result two working circuit are proposed, one using an ADC of 10 bits resolution, the other an ADC of 24 bits . A central component to this instrument, which bridges the optomechanics, signal coding and acquisition subsystems, is a digital micromirror device (DMD), an array of independently controlled micromirrors which can be tilted in two, opposed, directions. Such a device can, and is, thus used to manipulate light. For this project a DLP LightCrafter, a projector development kit by Texas Instruments which includes a DMD, was used to encode light signals. The signal coding subsystem is constituted by the LightCrafter and two programs: one written in C/C++ to run either on a PC (DMD-CS.cpp), which main purpose is to control the DMD and communicate with the LightCrafter’s processor, and which also communicates with an Arduino micro-controller that manages the acquisition electronics; the second (which is also part of the acquisition subsystem) in Arduino programming language, to run on the micro-controller (pIDDO.ino), which will manage the processes required to perform measurements with the electronics and communicate with the C/C++ program; the interactions between both programs are crucial to ensure synchronism between the signal coding and acquisition subsystems. The chosen encoding basis are squared Hadamard matrices that can be attained by following simple algorithms; rows of such matrices were then manipulated into tilt configurations for the micromirror grid; the set of rows used will constitute a sampling matrix. Each program outputs a file, one holding information about the sampling matrix used, the other holding the measurements. The signal reconstruction subsystem is another program that takes the files generated by DMD-CS.cpp and pIDDO.ino to reconstruct the original signal by implementing a Matlab script written by Romberg. The program then outputs a BMP image file of that reconstruction. The components of the prototype structural subsystem and optomechanical supports were designed using computer assisted design (CAD) software, with which finite element simulations were also performed to ensure those same components would be able to endure real world conditions. Some of these components were bought most of them were fabricated in the laboratory. All subsystems were individually tested, as well as in couples (when relevant). After passing those tests, these subsystems were assembled to form COSAC. The instrument was calibrated, analysed and validated, using both versions of the acquisition circuit, in a laboratory setting with controlled lighting conditions. Comparative results of COSAC’s performance for three modes of acquisition (raster, Hadamard transform optics and CS with Hadamard base) are also presented. COSAC was shown to be able to produce images of CS measurements, performed in the visible spectrum, with at least 64_64 pixels.Almeida, André Moitinho de,1967-Martins, Alberto Garcez de Oliveira KroneRepositório da Universidade de LisboaSilvestre, João Maria Felner Rino Alves2019-03-27T18:35:51Z201920192019-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10451/37722TID:202241645enginfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-08T16:35:01Zoai:repositorio.ul.pt:10451/37722Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:51:43.519517Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
title |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
spellingShingle |
Development of sparse coding and reconstruction subsystems for astronomical imaging Silvestre, João Maria Felner Rino Alves Amostragem comprimida Astronomia COSAC DMD Hadamard Teses de mestrado - 2019 Domínio/Área Científica::Ciências Naturais::Ciências Físicas |
title_short |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
title_full |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
title_fullStr |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
title_full_unstemmed |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
title_sort |
Development of sparse coding and reconstruction subsystems for astronomical imaging |
author |
Silvestre, João Maria Felner Rino Alves |
author_facet |
Silvestre, João Maria Felner Rino Alves |
author_role |
author |
dc.contributor.none.fl_str_mv |
Almeida, André Moitinho de,1967- Martins, Alberto Garcez de Oliveira Krone Repositório da Universidade de Lisboa |
dc.contributor.author.fl_str_mv |
Silvestre, João Maria Felner Rino Alves |
dc.subject.por.fl_str_mv |
Amostragem comprimida Astronomia COSAC DMD Hadamard Teses de mestrado - 2019 Domínio/Área Científica::Ciências Naturais::Ciências Físicas |
topic |
Amostragem comprimida Astronomia COSAC DMD Hadamard Teses de mestrado - 2019 Domínio/Área Científica::Ciências Naturais::Ciências Físicas |
description |
Tese de mestrado integrado Engenharia Física, Universidade de Lisboa, Faculdade de Ciências, 2019 |
publishDate |
2019 |
dc.date.none.fl_str_mv |
2019-03-27T18:35:51Z 2019 2019 2019-01-01T00:00:00Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10451/37722 TID:202241645 |
url |
http://hdl.handle.net/10451/37722 |
identifier_str_mv |
TID:202241645 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799134452970946560 |