Eu sou novo no tópico de detecção compactada. Eu li alguns artigos sobre R.Baranuik, Y.Eldar, Terence Tao etc. Todos esses documentos fornecem basicamente os detalhes matemáticos por trás dele, ou seja, Sparsity, RIP, minimização de normas L1 etc. No entanto, alguém pode fornecer os códigos MATLAB que conseguem sensoriamento compressivo?
Agradecemos antecipadamente por qualquer ajuda.
Respostas:
mex
- não tenho certeza.Mas tudo isso e muito mais está incluído nesta lista de caixas de ferramentas .
Descobri que a parte difícil é encontrar o código psued - é aí que eles realmente descrevem o algoritmo. Aqui estão alguns exemplos de algoritmos que incluíram o psuedocode:
IST
.fonte
Suponho que estou respondendo off-topic aqui, mas, para abordagens de otimização L1, encontro YALL1 ( http://yall1.blogs.rice.edu/ ) e SPGL1 ( http://www.cs.ubc.ca/ ~ mpf / spgl1 / ) pacotes muito úteis e eficientes. O TFOCS ( http://cvxr.com/tfocs/ ) é provavelmente um pouco mais difícil de usar, mas deve ser bastante flexível. Também existe o CVX ( http://cvxr.com/cvx/ ), que facilita a digitação de problemas de otimização convexos diretamente no código, mas é consideravelmente mais lento para solucionar os problemas específicos do sensor comprimido, uma vez que é um solucionador muito geral.
Existem também alguns algoritmos de reconstrução disponíveis no Sparselab ( http://sparselab.stanford.edu/ ).
Uma lista maior de códigos de reconstrução esparsos está listada aqui: https://sites.google.com/site/igorcarron2/cs#reconstruction
fonte
Lembre-se de que L1 não é a única abordagem ao sensor de compressão. Em nossa pesquisa , obtivemos melhor sucesso com o Approximate Message Passing (AMP). Estou definindo "sucesso" como erro menor, melhores transições de fase (capacidade de recuperar com menos observações) e menor complexidade (memória e CPU).
O algoritmo Approximate Message Passing estabelece uma estrutura bayesiana para estimar os vetores desconhecidos em um sistema linear de grande escala, em que as entradas e saídas do sistema linear são determinadas por modelos probablísticos (por exemplo, "esse vetor foi medido com ruído", "esse vetor tem algumas zeros "). A abordagem AMP original forjada pela Donoho foi refinada por Rangan para a Passagem aproximada generalizada de mensagens com o código Matlab disponível. As entradas e saídas podem ser funções de densidade de probabilidade quase arbitrárias. Em nossa pesquisa, descobrimos que o GAMP é tipicamente mais rápido, mais preciso e mais robusto (leia-se: melhores curvas de transição de fase) do que as abordagens convexas L1 e abordagens gananciosas (por exemplo, busca de correspondência ortogonal).
Meu orientador e eu acabamos de escrever um artigo sobre o uso do GAMP para Analysis CS, em que se espera uma abundância de zeros, não no vetor desconhecido x, mas em uma função linear desse Wx desconhecido.
fonte
Você também pode verificar o Matlab UNLocBox: http://unlocbox.sourceforge.net Existem 4 scripts de detecção de compressão na página de demonstração: http://unlocbox.sourceforge.net/doc/demos/index.php
fonte
Eu escrevi várias mãos em tutoriais de codificação, explicando os conceitos básicos de CS, MP, OMP etc. para iniciantes. Você pode vê-los em https://sparse-plex.readthedocs.io/en/latest/demos/index.html
É parte do sparse-plex da minha biblioteca disponível no GitHub https://github.com/indigits/sparse-plex
fonte