Rerun está construindo a pilha de dados multimodal para modelar, ingerir, armazenar, consultar e visualizar dados no estilo robótico. É usado em áreas como robótica, IA espacial e incorporada, mídia generativa, processamento industrial, simulação, segurança e saúde.
A repetição é fácil de usar! Use o Rerun SDK (disponível para C++, Python e Rust) para registrar dados como imagens, tensores, nuvens de pontos e texto. Os logs são transmitidos para o Rerun Viewer para visualização ao vivo ou para arquivo para uso posterior. Você também pode consultar os dados registrados por meio de nossa API de dataframe.
Comece em minutos – não é necessária nenhuma conta.
import rerun as rr # pip install rerun-sdk
rr . init ( "rerun_example_app" )
rr . connect () # Connect to a remote viewer
# rr.spawn() # Spawn a child process with a viewer and connect
# rr.save("recording.rrd") # Stream all logs to disk
# Associate subsequent data with 42 on the “frame” timeline
rr . set_time_sequence ( "frame" , 42 )
# Log colored 3D points to the entity at `path/to/points`
rr . log ( "path/to/points" , rr . Points3D ( positions , colors = colors ))
…
pip install rerun-sdk
ou em conda
cargo add rerun
Para transmitir dados de log pela rede ou carregar nossos arquivos de dados .rrd
você também precisa do binário rerun
. Ele pode ser instalado com pip install rerun-sdk
ou com cargo install rerun-cli --locked --features nasm
(veja a nota abaixo). Observe que apenas o Python SDK vem junto com o Viewer, enquanto C++ e Rust sempre dependem de uma instalação separada.
Nota : o recurso nasm
Cargo requer que a CLI nasm
esteja instalada e disponível em seu caminho. Alternativamente, você pode ignorar a ativação deste recurso, mas isso pode resultar em desempenho inferior de decodificação de vídeo.
Agora você deve conseguir executar rerun --help
em qualquer terminal.
Estamos em desenvolvimento ativo. Há muitos recursos que queremos adicionar e a API ainda está evoluindo. Espere mudanças radicais!
Algumas deficiências:
Rerun foi desenvolvido para ajudá-lo a compreender e melhorar processos complexos que incluem dados multimodais ricos, como 2D, 3D, texto, séries temporais, tensores, etc. É usado em muitos setores, incluindo robótica, simulação, visão computacional ou qualquer coisa que envolva muitos sensores ou outros sinais que evoluem com o tempo.
Digamos que você esteja construindo um robô aspirador de pó e ele continua batendo nas paredes. Por que está fazendo isso? Você precisa de alguma ferramenta para depurá-lo, mas um depurador normal não será útil. Da mesma forma, apenas registrar o texto também não será muito útil. O robô pode registrar “Passando pela porta”, mas isso não explica por que ele pensa que a parede é uma porta.
O que você precisa é de um depurador visual e temporal, que possa registrar todas as diferentes representações do mundo que o robô tem em sua cabecinha, como:
Você também deseja ver como todos esses fluxos de dados evoluem ao longo do tempo para poder voltar e identificar exatamente o que deu errado, quando e por quê.
Talvez aconteça que o brilho do sol tenha atingido um dos sensores de maneira errada, confundindo a rede de segmentação, levando a uma detecção incorreta de objetos. Ou talvez tenha sido um bug no código de digitalização lidar. Ou talvez o robô tenha pensado que estava em algum outro lugar do apartamento, porque sua odometria estava quebrada. Ou pode ser uma entre milhares de outras coisas. A reprise irá ajudá-lo a descobrir!
Mas ver o mundo do ponto de vista do robô não serve apenas para depuração - também lhe dará ideias sobre como melhorar os algoritmos, novos casos de teste para configurar ou conjuntos de dados para coletar. Também permitirá que você explique o cérebro do robô aos seus colegas, chefe e clientes. E assim por diante. Ver para crer, e uma imagem vale mais que mil palavras, e o registro temporal multimodal vale mais que mil imagens :)
Embora ver e compreender seus dados sejam essenciais para progredir na robótica, há mais uma coisa: você também pode usar os dados coletados para visualização para criar novos conjuntos de dados para treinar e avaliar os modelos e algoritmos executados em seu robô. O Rerun fornece APIs de consulta para facilitar a extração de conjuntos de dados limpos de sua gravação exatamente para esse propósito.
É claro que o Rerun é útil para muito mais do que apenas robôs. Sempre que você tiver algum tipo de sensor ou estado 2D ou 3D evoluindo ao longo do tempo, o Rerun é uma ótima ferramenta.
Rerun usa um modelo de núcleo aberto. Tudo neste repositório permanecerá de código aberto e gratuito (tanto na cerveja quanto na liberdade).
Também estamos construindo uma plataforma de dados comerciais. No momento, isso está disponível apenas para alguns parceiros de design selecionados. Clique aqui se você estiver interessado.
O projeto de código aberto Rerun atende às necessidades de desenvolvedores individuais. O produto comercial atende às necessidades específicas das equipes que constroem e executam produtos de visão computacional e robótica.
Ao usar o Rerun em sua pesquisa, cite-o para reconhecer sua contribuição para o seu trabalho. Isso pode ser feito incluindo uma referência a Rerun na seção de software ou métodos do seu artigo.
Formato de citação sugerido:
@software { RerunSDK ,
title = { Rerun: A Visualization SDK for Multimodal Data } ,
author = { {Rerun Development Team} } ,
url = { https://www.rerun.io } ,
version = { insert version number } ,
date = { insert date of usage } ,
year = { 2024 } ,
publisher = { {Rerun Technologies AB} } ,
address = { Online } ,
note = { Available from https://www.rerun.io/ and https://github.com/rerun-io/rerun }
}
Substitua "inserir número de versão" pela versão do Rerun que você usou e "inserir data de uso" pela(s) data(s) em que você usou a ferramenta em sua pesquisa. Este formato de citação ajuda a garantir que a equipe de desenvolvimento do Rerun receba o crédito apropriado por seu trabalho e facilita a descoberta da ferramenta por outros pesquisadores.
ARCHITECTURE.md
CODE_OF_CONDUCT.md
CODE_STYLE.md
CONTRIBUTING.md
BUILD.md
rerun_py/README.md
- instruções para Python SDKrerun_cpp/README.md
– instruções para SDK C++ .whl
correto nas versões do GitHubpip install rerun_sdk<…>.whl
(substitua <…>
pelo nome do arquivo real)rerun --version