Ferramentas robóticas impressionantes
Uma lista com curadoria de ferramentas para desenvolvimento robótico profissional em C ++ e Python com um toque de ROS, direção autônoma e aeroespacial
Para parar de reinventar a roda, você precisa saber sobre a roda. Esta lista é uma tentativa de mostrar a variedade de ferramentas abertas e gratuitas no desenvolvimento de software e hardware, que são úteis no desenvolvimento robótico profissional.
Sua contribuição é necessária para manter essa lista viva, aumentar a qualidade e expandi -la. Você pode ler mais sobre sua origem e como você pode participar do guia de contribuição e da postagem do blog relacionada. Todas as novas entradas do projeto terão um tweet do ProtoTypes.
Conteúdo
- Comunicação e coordenação
- Documentação e apresentação
- Requisitos e segurança
- Arquitetura e design
- Estruturas e pilhas
- Ambiente de Desenvolvimento
- Código e execute
- Modelo
- Construir e implantar
- Teste de unidade e integração
- Fiapos e formato
- Depuração e rastreamento
- Controle de versão
- Simulação
- Eletrônica e mecânica
- Processamento do sensor
- Calibração e transformação
- Pipeline de percepção
- Aprendizado de máquina
- Processamento paralelo
- Processamento de imagem
- Processamento de radar
- Processamento de nuvem de lidar e pontos
- Localização e estimativa de estado
- Localização e mapeamento simultâneos
- LIDAR
- Visual
- Mapa vetorial
- Previsão
- Comportamento e decisão
- Planejamento e controle
- Interação do usuário
- Interface gráfica do usuário
- Interface do usuário acústico
- Interface da linha de comando
- Visualização de dados e controle de missão
- Anotação
- Nuvem de pontos
- Rviz
- Sistema operacional
- Monitoramento
- Banco de dados e registro
- Sistema de arquivos distribuído em rede
- Infraestrutura do servidor e computação de alto desempenho
- Sistema de operação incorporado
- Kernel em tempo real
- Rede e middleware
- Ethernet e redes sem fio
- Rede de área do controlador
- Interfaces de sensor e acuator
- Segurança
- Conjuntos de dados
Comunicação e coordenação
- Desenvolvimento ágil - Manifesto para o desenvolvimento de software ágil.
- Gitflow - facilita muito o desenvolvimento paralelo, isolando um novo desenvolvimento do trabalho acabado.
- DEEPL - Um tradutor on -line que supera o Google, Microsoft e Facebook.
- TAGA - Ferramenta de gerenciamento de projeto ágil.
- Kanboard - Conselho Kanban minimalista.
- Kanban - Free, de código aberto, auto -hospedado, Kanban Board for Gitlab Issues.
- GitLab - servidor GitLab simples e auto -lançado com o Docker.
- Gogs - Construa um serviço Git simples, estável e extensível auto -hospedado que pode ser configurado da maneira mais indolor.
- Wekan - Conselho Kanban baseado em meteoros.
- Jira API - Biblioteca Python para API REST de Jira.
- Taiga API - Biblioteca Python para API REST de Taiga.
- Chronos -TimeTracker - cliente de desktop para jira. Horário da pista, faça upload de gló de trabalho sem um aborrecimento.
- GRGE - GRGE é um utilitário de daemon e linhas de comando que aumenta o Gitlab.
- GITLAB -TRIELA - Os problemas do GitLab e a triagem de solicitações de mesclagem, automatizados.
- Ajuda - um aplicativo de suporte ao cliente de Helpdesk de código aberto moderno.
- SONEFFICE - Um sistema colaborativo de código aberto gratuito desenvolvido para gerenciar documentos, projetos, relacionamento com o cliente e correspondência por email, tudo em um só lugar.
- Discurso - uma plataforma para discussão da comunidade. Grátis, aberto, simples.
- Gerrit - Uma ferramenta de revisão de código e gerenciamento de projetos para projetos baseados em Git.
- JITSI -MEET - videoconferências seguras, simples e escaláveis que você usa como um aplicativo independente ou incorporado em seu aplicativo da web.
- Matéria - Um código aberto, nuvem privada, alternativa de folga.
- OpenProject - o principal software de gerenciamento de projetos de código aberto.
- LeanTime - LeanTime é um sistema de gerenciamento de projetos enxuta para inovadores.
- Gitter - Gitter é uma plataforma de bate -papo e rede que ajuda a gerenciar, crescer e conectar comunidades por meio de mensagens, conteúdo e descoberta.
Documentação e apresentação
- TIPORA - Um editor de marcação minimalista.
- Markor - um editor simples de marcação para o seu dispositivo Android.
- Pandoc - Conversor de marcação universal.
- Yaspeller - Ferramenta de linha de comando para verificação de ortografia.
- ReadThedocs - Crie seu servidor ReadThEdocs local.
- Doxygen - Doxygen é a ferramenta padrão de fato para gerar documentação a partir de fontes de C ++ anotadas.
- Esfinge - Uma ferramenta que facilita a criação de documentação inteligente e bonita para projetos Python.
- Palavra para markdown-Uma jóia Ruby para libertar o conteúdo do documento do Microsoft Word.
- sem papel - Index e arquiva todos os seus documentos de papel digitalizados.
- Carbono - Compartilhe belas imagens do seu código -fonte.
- UNDRAW - SVGs de negócios profissionais gratuitos fáceis de personalizar.
- Asciinema - permite gravar facilmente sessões de terminal e reproduzi -las em um terminal e em um navegador da web.
- Inkscape - Inkscape é um editor profissional de gráficos vetoriais para Linux, Windows e MacOS.
- Reveal -Hugo - Um tema Hugo para Revela.JS que torna a autorização e a personalização uma brisa. Com ele, você pode transformar qualquer conteúdo de Hugo formatado corretamente em uma apresentação HTML.
- Hugo -Webslides - Este é um modelo Hugo para criar a apresentação da Webslides usando o Markdown.
- Jupyter2slides - Cloud Native Apresentation Slides com notebook Jupyter + Revela.js.
- PATAT - Apresentações baseadas em terminais usando Pandoc.
- Github-Changelog-Generator-Gere automaticamente o log de alterações de suas tags, problemas, etiquetas e solicitações de puxar no GitHub.
- GitLab-Release-Note-Generator-Um gerador de notas de liberação do GitLab que gera nota de liberação na tag mais recente.
- OCRMYPDF - Adiciona uma camada de texto OCR aos arquivos PDF digitalizados, permitindo que eles sejam pesquisados.
- PapgemoL - Uma ferramenta para parametrização, execução e análise de notebooks Jupyter.
- DOCSY - Um site de documentação de exemplo usando o tema Docsy Hugo.
- Ações -Hugo - Implante o site com base nas páginas Hugo em Github.
- Overleaf-um editor de látex colaborativo on-line em tempo real on-line.
- Deslizamento de terra - Gere apresentações de slides html5 a partir de markdown, repouso ou têxtil.
- LibreOffice-Impress-Templates-LibreOffice de licenciamento livremente modelos de impressões.
- OpenSourcedesign - Comunidade e recursos para design gratuito e criação de logotipo.
- Olive-Um editor de vídeo não linear gratuito, com o objetivo de fornecer uma alternativa totalmente feita ao software de edição de vídeo profissional de ponta.
- Buku - Gerente de marcador independente do navegador.
- Swiftlatex - Um editor de látex baseado em navegador Wysiwyg.
- Relaxado - permite que layouts complexos de PDF sejam definidos com CSS e JavaScript, enquanto escrevem o conteúdo em uma sintaxe amigável e mínima próxima ao Markdown ou Latex.
- A espuma - a espuma é um sistema de gestão e compartilhamento de conhecimento pessoal inspirado na pesquisa de roam, construído no código do Visual Studio e no Github.
- Codimd - Open Open Online em tempo real colaborar na documentação da equipe em Markdown.
- Jupyter-Book-Construa documentos interativos e com qualidade de publicação dos notebooks Jupyter.
- InvoiceNet - Rede neural profunda para extrair informações inteligentes dos documentos da fatura.
- TESSERACT - motor OCR de código aberto.
- MKDOCS - Um gerador de sites estático rápido, simples e absolutamente lindo que é voltado para a criação de documentação do projeto.
- PLOTNEURALNET - Código de látex para desenhar redes neurais para relatórios e apresentação.
- Excalidraw - quadro branco virtual para desenhar os diagramas como desenhados à mão.
- SVGREPO - Faça o download de vetores SVG gratuitos para uso comercial.
- Gollum - Um wiki simples e movido a Git com uma API doce e front -end local.
- GANTTLAB - O gráfico de Gantt totalmente funcional e fácil de usar para GitLab e Github.
- Zotero-Uma ferramenta gratuita e fácil de usar para ajudá-lo a coletar, organizar, citar e compartilhar suas fontes de pesquisa.
Requisitos e segurança
- Awesome-segurança-crítica-Lista de recursos sobre práticas de programação para escrever software crítico de segurança.
- O Aberto-Autonomous-Safety-OEA é uma biblioteca totalmente aberta dos processos de segurança e procedimentos de teste da Voyage, projetados para complementar os programas de segurança existentes em startups de carros autônomos em todo o mundo.
- Carnd-funcional-segura-Projeto-Crie documentos de segurança funcionais neste projeto de udacidade.
- Documentos automatizados de segurança de estacionamento com manobrista - criado para apoiar o teste seguro da função de estacionamento com manobrista automatizado usando o veículo de teste de rua em um estacionamento.
- Safe_numerics - Substituições para tipos numéricos padrão que lançam exceções sobre erros.
- Padrões de codificação de desenvolvimento do veículo Aéreo C ++ - Forneça orientação e orientação aos programadores C ++ que lhes permitirão empregar um bom estilo de programação e práticas comprovadas de programação, levando a um código seguro, confiável, testável e sustentável.
- Padrão de codificação de autosar - Diretrizes para o uso do idioma C ++ 14 no sistema crítico e relacionado à segurança.
- O modelo W e a agilidade em escala enxuta para a engenharia-a Ford aplicou um método ágil-M-model a partir do vetor que pode ser usado no gerenciamento de projetos relacionados à segurança.
- Doorstop - Gerenciamento de requisitos usando o controle da versão.
- Capella - Ferramenta MBSE abrangente, extensível e comprovada por campo para projetar com sucesso a arquitetura de sistemas.
- ROBMOSYS-Robmosys prevê uma abordagem integrada criada na parte superior das plataformas robóticas centradas em código atual, aplicando métodos e ferramentas orientados a modelos.
- Papyrus para robótica - uma ferramenta de edição gráfica para aplicações robóticas que cumprem a abordagem Robmosys.
- Fossologia - Um kit de ferramentas Você pode executar varreduras de licença, direitos autorais e controle de exportação da linha de comando.
- Cenário - O Cenário Arquiteto é uma ferramenta básica de Python para gerar, importar e exportar instantâneos de cena curtos.
Arquitetura e design
- Diretrizes - Como arquitetar sistemas baseados em ROS.
- YED - Um poderoso aplicativo de desktop que pode ser usado para gerar rápida e efetivamente diagramas de alta qualidade.
- yed_py - gera graphml que pode ser aberto em yed.
- Plantuml-Aplicativo da Web para gerar diagramas UML on-the-fly em sua documentação ao vivo.
- RQT_GRAPH - fornece um plug -in GUI para visualizar o gráfico de computação do ROS.
- rqt_launchtree - um plug -in RQT para introspecção hierárquica de configuração do arquivo de lançamento.
- Dependências de CPP - ferramenta para verificar dependências C ++ #include (gráficos de dependência criados no formato .dot).
- Pydeps - gráficos de dependência do módulo Python.
- AZTARNA - Uma ferramenta de pegada para robôs.
- Draw.io - Um software de diagrama on -line gratuito para fazer fluxogramas, diagramas de processo, gráficos de organizações, UML, ER e diagramas de rede.
- VSCODE -DRAWIO - Esta extensão integra o draw.io ao código VS.
- Architecture_Decision_record - Um documento que captura uma importante decisão arquitetônica tomada junto com seu contexto e consequências.
Estruturas e pilhas
- ROS - (Robot Operating System) fornece bibliotecas e ferramentas para ajudar os desenvolvedores de software a criar aplicativos de robô.
- Awesome -Ros2 - Uma lista com curadoria de recursos operacionais de robôs impressionantes versão 2.0 (ROS 2) Recursos e bibliotecas.
- AutoThare.auto-Autoarare.auto Aplica a melhor engenharia de software da categoria para direção autônoma.
- AutoThare.ai-Autotare.ai é o primeiro software de código aberto "All-in-One" do mundo para a tecnologia de direção autônoma.
- OpenPilot - Controle de cruzeiro adaptativo de código aberto (ACC) e Sistema de Assistência de Manter Lane (LKAs).
- Apollo - Arquitetura flexível de alto desempenho que acelera o desenvolvimento, teste e implantação de veículos autônomos.
- Pythonrobotics - Esta é uma coleção de código Python de algoritmos de robótica, especialmente para navegação autônoma.
- Código de carros Stanford Auto -Driving - Código de Stanford de carros que entraram em grandes desafios da DARPA.
- AstroBee - O Astrobee é um robô de vôo livre projetado para operar como uma carga útil dentro da Estação Espacial Internacional (ISS).
- Carmaplatform - Permite plug -in de direção automatizada cooperativa.
- Linux de grau automotivo - Linux de grau automotivo é um projeto de código aberto colaborativo que está reunindo montadoras, fornecedores e empresas de tecnologia para acelerar o desenvolvimento e a adoção de uma pilha de software totalmente aberta para o carro conectado.
- PX4 - Um software de controle de vôo de código aberto para drones e outros veículos não tripulados.
- KUBOS - Uma pilha de software de código aberto para satélites.
- Mod_vehicle_dynamics_control - Pilha de software da equipe Roborace TUM - Controle de rastreamento de caminho, controle de velocidade, controle de curvatura e estimativa de estado.
- ASLAN - Software autônomo de código aberto para ambientes de baixa velocidade.
- ROVER DE FORMO Aberto-Um rover de 6 rodas, com base no Rovers em Marte da JPL.
- Pybotics-Uma caixa de ferramentas Python de código aberto e revisado por pares para cinemática e calibração do robô.
- Makani - Contém o simulador de vôo Makani, o controlador (piloto automático), as ferramentas de monitoramento de vôo do Visualizer e Center Flight.
- MIR_ROBOT - Este é um projeto comunitário para usar os robôs MIR com ROS.
- Pacote de fabricação robótica de compas para a estrutura de compas.
- JDEROBOT Academy - A JDerobot Academy é uma coleção de exercícios de código aberto para aprender robótica de maneira prática.
- CLOVER-Framework baseado em ROS e imagem RPI para controlar drones movidos a PX4.
- Ardupilot - Software de controle de código aberto para veículos autônomos - Copters/Planes/Rovers/Boats/Submersibles.
- F Prime - uma estrutura orientada a componentes que permite o rápido desenvolvimento e implantação de voos espaciais e outros aplicativos de software incorporados.
Ambiente de Desenvolvimento
Código e execute
- VIM -ROS - VIM Plugin para desenvolvimento de ROS.
- Código do Visual Studio-Editor de código para o ciclo Edit-Build-Debug.
- Atom - Editor de texto hackable para o século XXI.
- TeleType - Compartilhe seu espaço de trabalho com os membros da equipe e colabore no código em tempo real no Atom.
- Sublime - Um editor de texto sofisticado para código, marcação e prosa.
- ADE -CLI - O ambiente de desenvolvimento ADE (ADE) usa o Docker e o GitLab para gerenciar ambientes de ferramentas de desenvolvimento de projeto e imagens de volume opcional.
- Receitas-um gerador de Dockerfile para executar aplicativos OpenGL (GLX) com NVIDIA-Docker2, CUDA, ROS e GAZEBO em um sistema de servidor sem cabeça remoto.
- JUPYTER ROS - JUPYTER Widget Helpers for Ros, o sistema operacional do robô.
- ROS_RQT_PLUGIN - O plug -in Ros Qt Creator para Python.
- xeus -cling - kernel Jupyter para a linguagem de programação C ++.
- ROS IDES - Esta página coleta experiência e conselhos sobre o uso de ambientes de desenvolvimento integrado (IDEs) com ROS.
- TabNine - o autocométrico de todas as línguas.
- Kite - Use o aprendizado de máquina para fornecer conceitos de código úteis para o Python.
- Jedi - biblioteca de análise estática e de conclusão automática para Python.
- Roslibpy - A Biblioteca Python Ros Bridge permite usar o Python e o Ironpython para interagir com o ROS, o middleware robótico de código aberto.
- PYBIND11 - Operabilidade perfeita entre C ++ 11 e Python.
- SourCETRAIL-Explorador de origem de plataforma cruzada gratuita e de código aberto.
- Recostar a ferramenta de linha de comando que obtém instantaneamente os resultados da pilha quando uma exceção é lançada.
- MyBinder - Open Notebooks em um ambiente executável, tornando seu código imediatamente reproduzível por qualquer pessoa, em qualquer lugar.
- Rosonwindows - Um lançamento experimental do ROS1 para Windows.
- Share ao vivo-Desenvolvimento colaborativo em tempo real do conforto de suas ferramentas favoritas.
- Cocalc - Cálculo colaborativo na nuvem.
- EasyclangComplete - Conclusão robusta do código C/C ++ para texto sublime 3.
- VSCODE -ROS - Extensão do código do Visual Studio para desenvolvimento do sistema operacional de robôs (ROS).
- Awesome-hpp-Uma lista com curadoria de bibliotecas C ++ somente para cabeçalho impressionantes.
- GITPOD-Uma plataforma de desenvolvedor de código aberto que automatiza o provisionamento de ambientes de desenvolvimento pronto para código.
Modelo
- ROS - Modelo para padronização do nó ROS em C ++.
- Lançar - Modelos sobre como criar arquivos de lançamento para projetos maiores.
- BASH - Um modelo de script de bash que incorpora as melhores práticas e várias funções úteis.
- URDF - Exemplos sobre como criar formato de descrição do robô unificado (URDF) para diferentes tipos de robôs.
- Guia de Python - estilo a ser seguido ao escrever código Python para ROS.
- Docker - O Dockerfile no projeto Minimal -Ade mostra um exemplo mínimo de como criar uma imagem base personalizada.
- VS Código Ros2 Modelo de espaço de trabalho - modelo para usar o VSCode como um IDE para o desenvolvimento do ROS2.
Construir e implantar
- Qemu-user-static-Ative uma execução de diferentes contêineres multi-arquitetura por Qemu e Binfmt_misc.
- Cross Compile Ros 2 no QNX - apresenta como cruzar o ROS 2 no QNX.
- Bloom - Uma ferramenta de automação de liberação que facilita a liberação de pacotes Catkin.
- Superflore - um gerente de liberação de plataforma estendido para o sistema operacional de robôs.
- Catkin_tools - Ferramentas de linha de comando para trabalhar com Catkin.
- Industrial_Ci - Fácil repositório de integração contínua para repositórios de ROS.
- ROS_GITLAB_CI - Contém scripts e instruções auxiliares sobre como usar a integração contínua (IC) para projetos de ERO hospedados em uma instância do GitLab.
- GitLab -Runner - executa testes e envia os resultados para o GitLab.
- Colcon -Core - Ferramenta de linha de comando para melhorar o fluxo de trabalho da construção, teste e uso de vários pacotes de software.
- GitLab -Release - Script simples do Python3 para fazer upload de arquivos (do IC) para o lançamento atual dos projetos (TAG).
- CLANG-Este é um front-end do compilador para a família C de idiomas (C, C ++, Objective-C e Objective-C ++), que é construída como parte do projeto de infraestrutura do compilador LLVM.
- Catkin_virtualEnv - Requisitos de pacote de pacote em um pacote Catkin via Virtualenv.
- Pyenv - Gerenciamento de versão simples do Python.
- Apropriadamente - Ferramenta de Gerenciamento de Repositórios Debian.
- Cross_compile - Ativos usados para compilação cruzada do ROS2.
- Docker_images - Imagens oficiais do Docker mantidas pela OSRF no ROS (2) e Gazebo.
- Robot_upstart - apresenta um conjunto de scripts para ajudar no lançamento de processos de ROS em segundo plano nos PCs do Ubuntu Linux.
- Robot_systemd - Unidades para gerenciar a inicialização e o desligamento de Roscore e Roslaunch.
- RYO -ISO - Um construtor ISO moderno que simplifica o processo de implantação de um sistema operacional de robô completo a partir de um arquivo de configuração da YAML.
- Network_autoconfig - Configuração automática da rede de ROS para a maioria dos casos de uso sem impactar o uso que exija configuração manual.
- Rosbuild - A fazenda de construção de Ros.
- CROs - Um único encadeamento Pure C implementação da estrutura do ROS.
Teste de unidade e integração
- Setup -Ros - Esta ação configura um ambiente ROS e ROS 2 para uso em ações do GitHub.
- Unittesting - Esta página apresenta a lógica, as melhores práticas e as políticas para escrever e executar testes de unidade e integração para ROS.
- GOOGLETEST - Estrutura de teste C ++ do Google.
- Pytest - A estrutura de pytest facilita a gravação de pequenos testes, mas escalas para suportar testes funcionais complexos.
- DOCTEST-O C ++ mais rápido rico em recursos 11/14/17/20 Estrutura de teste de um único cabeçalho para testes de unidade e TDD.
- OSRF_TESTING_TOOLS_CPP - contém ferramentas de teste para C ++ e é usado em projetos OSRF.
- Code_Coverage - Pacote ROS para executar testes de cobertura.
- Ação Ação-Ros-CI-Github Ação para construir e testar pacotes ROS 2 usando o Colcon.
Fiapos e formato
- Ação-Ros-Lint-Ação do GitHub para executar linhentes nos pacotes ROS 2.
- CPPCHECK - Análise estática do código C/C ++.
- Hadolint - Dockerfile Linter, valida Bash em linha, escrito em Haskell.
- ShellCheck - Uma ferramenta de análise estática para scripts de shell.
- Catkin_lint - Verifica as configurações do pacote para o sistema de construção Catkin de ROS.
- O Pylint - Pylint é uma ferramenta de análise de código estático do Python que procura erros de programação, ajuda a aplicar um padrão de codificação, fareja com cheiros de código e oferece sugestões simples de refatoração.
- Black - o formatador de código Python intransigente.
- Pydocstyle - Uma ferramenta de análise estática para verificar a conformidade com as convenções de Docstring Python.
- Haros - Análise estática do código de aplicativo ROS.
- Pydantic - Analisagem de dados e validação usando dicas do tipo Python.
Depuração e rastreamento
- HEATTRACK - Rastreia todas as alocações de memória e anota esses eventos com traços de pilha.
- ROS2_TRACING - Ferramentas de rastreamento para ROS 2.
- LinuxPerf - vários materiais de desempenho do Linux.
- LPTRACE - permite que você veja em tempo real o que funciona um programa Python está em execução.
- Pyre-check-Verificação do tipo de desempenho para Python.
- FlameGraph - Visualize o código perfilado.
- GPUVIS - Visualizador de rastreamento da GPU.
- Sinalizador - endereço de endereço, Threadsanitizer, MemorySanitizer.
- CPPInsights - C ++ Insights - Veja seu código -fonte com os olhos de um compilador.
- Inspecione - O módulo Inspecion fornece funções para aprender sobre objetos vivos, incluindo módulos, classes, instâncias, funções e métodos.
- ROSLAUnch nós em Valgrind ou GDB - Ao depurar nós Roscpp que você está lançando com o Roslaunch, você pode lançar o nó em um programa de depuração como GDB ou Valgrind.
- Pyperformance - Python Performance Benchmark Suite.
- QIRA - QIRA é um concorrente de atrair e GDB.
- GDB -Frontend - GDBFrontend é um depurador de GUI fácil, flexível e extensível.
- LTTNG - Um kit de ferramentas de software de código aberto que você pode usar para rastrear simultaneamente o kernel Linux, aplicativos de usuário e bibliotecas de usuários.
- Ros2 Performance - permite criar facilmente sistemas arbitrários de Ros2 e depois mede seu desempenho.
- BCC - Ferramentas para análise Linux IO baseada em BPF, rede, monitoramento e muito mais.
- Tracy - uma resolução em tempo real, nanossegundo, perfil de telemetria remota para jogos e outros aplicativos.
- BPFTRACE - Idioma de rastreamento de alto nível para Linux EBPF.
- PUDB - Depurador do console de tela cheia para Python.
- C -CPP para trás - Uma bela impressora bonita de rastreamento para C ++.
- Dashboard GDB - O Painel GDB é um arquivo .gdbinit independente escrito usando a API Python que permite uma interface modular mostrando informações relevantes sobre o programa que está sendo depurado.
- Hotspot - The Linux Perf GUI para análise de desempenho.
- Memory_Profiler-Um módulo Python para monitorar o consumo de memória de um processo, bem como a análise linha por linha do consumo de memória para programas Python.
- ROS1_FUZZER - Este Fuzzher pretende ajudar desenvolvedores e pesquisadores a encontrar bugs e vulnerabilidades nos nós do ROS, realizando testes de fuzz sobre tópicos que o processo dos nós de destino.
- Vscode-debug-visualizador-Uma extensão para o código VS que visualiza dados durante a depuração.
- Action -tmate - Depure suas ações do GitHub via SSH usando o TMate para obter acesso ao próprio sistema corredor.
- LibStatistics_Collector - Biblioteca ROS 2, fornecendo classes para coletar medições e calcular estatísticas entre elas.
- System_Metrics_Collector - Coletor leve e de métricas de sistema em tempo real para sistemas ROS2.
Controle de versão
- Git -Fuzzy - uma interface da CLI para git que depende muito do FZF.
- Meld - Meld é uma ferramenta Visual Diff e Merge que ajuda a comparar arquivos, diretórios e projetos controlados por versão.
- TIG - Interface no modo de texto para Git.
- GITG - Uma interface gráfica do usuário para Git.
- Git -Cola - A GUI Git altamente cafeinada.
- Python -Gitlab - Um pacote Python que fornece acesso à API do GitLab Server.
- BFG-Repo-Cleaner-Remove bolhas grandes ou problemáticas, como o git-filtro, mas mais rápido.
- NBDIME - Ferramentas para difusão e fusão de notebooks Jupyter.
- Release semântica - Gerenciamento de versão totalmente automatizado e publicação de pacotes.
- GO-SEMREL-GITAB-Automatize o gerenciamento de versão para o GitLab.
- Git-Repo-O Git-Repo ajuda a gerenciar muitos repositórios Git, faz o upload para revisionar os sistemas de controle e automatiza partes do fluxo de trabalho de desenvolvimento.
- Dive - uma ferramenta para explorar cada camada em uma imagem do Docker.
- DVC - Gerenciamento e versão de conjuntos de dados e modelos de aprendizado de máquina.
- LearnGitBranching - Um visualizador de repositório Git, Sandbox e uma série de tutoriais e desafios educacionais.
- GITFS - Você pode montar a filial de um repositório remoto localmente e quaisquer alterações subsequentes feitas nos arquivos serão automaticamente comprometidas com o controle remoto.
- Git -Secret - Encrypts Arquivos com as chaves públicas dos usuários permitidos, permitindo que os usuários em quem você confia acesse os dados criptografados usando o PGP e suas chaves secretas.
- Git-sweep-uma ferramenta de linha de comando que ajuda a limpar as ramificações Git que foram fundidas no mestre.
- LAZYGIT - Uma interface do usuário do terminal simples para comandos git, escrito em Go com a biblioteca GOCUI.
- GLAB - Uma ferramenta de linha de comando GITLAB de código aberto.
Simulação
- Estrutura AI2 -THOL - Python com um back -end de unidade que fornece suporte, navegação e manipulação para agentes robóticos baseados em domicílios, consistindo em mais de 200 cenas personalizadas, mais de 1500 objetos anotados personalizados e mais de 200 ações.
- Drake - Drake pretende simular a dinâmica muito complexa dos robôs.
- Webots - Webots é um simulador de robô de código aberto compatível (entre outros) com ROS e ROS2.
- LGSV-LG Electronics America R&D Center desenvolveu um simulador multi-robô baseado em unidade HDRP para desenvolvedores de veículos autônomos.
- Carla - Simulador de código aberto para pesquisa de direção autônoma.
- Awesome -Carla - Uma lista com curadoria de tutoriais, blogs e projetos relacionados incríveis Carla.
- Ros -Bridge - Ros Bridge for Carla Simulator.
- SCENARIO_RUNNER - Definição do cenário de tráfego e mecanismo de execução.
- Deepdive-Simulação de ponta a ponta para carros autônomos.
- Pacotes UUV_Simulator - Gazebo/Ros para simulação de robótica subaquática.
- Airsim - Simulador de código aberto para veículos autônomos construídos no motor Unreal.
- O car-car-car-si-um simulador de carro autônomo construído com unidade.
- Rosintegração - plug -in de motor irreal para ativar o suporte à ERO.
- Gym-Gazebo-Uma extensão de ginástica Openai para usar o Gazebo conhecido como Gym-Gazebo.
- Drones de ginástica-Pybullet-Ambientes de ginástica baseados em pybullet para aprendizado de reforço único e multi-agente do controle de quadcopter.
- Controle Safe-Control-Ambientes Cartpole e Quadroter baseados em Pybullet-com dinâmica e restrições simbólicas de Casadi-para um controle seguro e robusto baseado em aprendizado.
- Highway-ENV-Uma coleção de ambientes para tarefas autônomas de direção e tomada de decisão tática.
- Interface VREP - ponte ROS para o simulador VREP.
- CAR_DEMO - Esta é uma simulação de um Prius em Gazebo 9, com dados de sensores sendo publicados usando o ROS Kinetic.
- O SUMO - Eclipse SUMO é um pacote de simulação de tráfego de trânsito de código aberto, altamente portátil, microscópico e contínuo projetado para lidar com grandes redes de estradas.
- Aberta-simulação-uma interface genérica para a percepção ambiental de funções de direção automatizadas em cenários virtuais.
- ESIM - um simulador de câmera de evento aberto.
- MENGE - Estrutura de simulação de multidão.
- Pedsim_ros - Simulador de pedestres alimentado pelo modelo de força social para Gazebo.
- OpenCRG - Formatos de arquivo aberto e ferramentas de código aberto para a descrição detalhada, criação e avaliação das superfícies da estrada.
- Esmini - um jogador básico de abertura do OpenSceNario.
- OpenCeneGraph - Um kit de ferramentas de gráficos 3D de alto desempenho de alto desempenho, usado por desenvolvedores de aplicativos em campos como simulação visual, jogos, realidade virtual, visualização científica e modelagem.
- Morse - Um simulador robótico acadêmico, baseado no mecanismo de jogo do liquidificador e no mecanismo de física da bala.
- RosintegationVision - Suporte para aquisição de dados RGBD habilitada por Ros em projetos de motores Unreal.
- Fetch_gazebo - contém a simulação do gazebo para buscar robôs de edição de pesquisa de robótica e frete.
- Rotors_simulator - fornece alguns modelos multirotores.
- Fluxo - Uma estrutura computacional para experimentos profundos de RL e controle para microssimulação de tráfego.
- GNSS-INS-SIM-GNSS + Navegação inercial, simulador de fusão de sensores. Gerador de trajetória de movimento, modelos de sensores e navegação.
- Robótica de ignição - Estratégias de controle de teste em segurança e aproveite a simulação em testes contínuos de integração.
- Ativos de simulação para o sufto - Esta coleção contém ativos de simulação para a concorrência virtual do Subt Challenge em Gazebo.
- GAZEBO_ROS_MOTORS - Atualmente, contém dois plugins de motor para Gazebo, um com um controlador de velocidade ideal e outro sem um controlador que modela um motor CC.
- MAP2GAZEBO - Pacote ROS para criar ambientes Gazebo a partir de mapas 2D.
- SIM_VEHELE_DYNAMICS - Software de simulação de dinâmica de veículos da equipe TUM Roborace.
- GYM -CARLA - Um invólucro de ginástica do Openai para o Simulador Carla.
- SIMBODY - Biblioteca de dinâmica/física Multiborpos C ++ de alto desempenho para simular sistemas biomecânicos e mecânicos articulados, como veículos, robôs e o esqueleto humano.
- Gazebo_models - Este repositório contém o banco de dados do modelo Gazebo.
- Pylot - plataforma de direção autônoma em execução no simulador Carla.
- Flightmare - O FlightMare é composto por dois componentes principais: um mecanismo de renderização configurável construído sobre a unidade e um mecanismo de física flexível para simulação de dinâmica.
- Pacotes Champ - Ros para o Controlador Quadriado do Campeão.
- REX-GYM-Ambientes de ginástica OpenAI para um robô quadrúpede de código aberto (SpotMicro).
- Truque - desenvolvido no NASA Johnson Space Center, é uma poderosa estrutura de desenvolvimento de simulação que permite aos usuários criar aplicativos para todas as fases do desenvolvimento de veículos espaciais.
- USV_SIM_LSA - Simulação de veículo de superfície não tripulada no mirante com corrente de água e ventos.
- 42 - Simulação para análise e design do sistema de controle de atitudes da nave espacial.
- Complete_street_rule - Uma ferramenta de design orientada para o cenário destinada a permitir que os usuários criem rapidamente ruas multimodais geradas processualmente no Arcgis CityEngine.
- Simulação Autocore - fornece ambiente de teste para a AutoChare e ainda durante o desenvolvimento inicial, o conteúdo abaixo pode alterar durante as atualizações.
- Ignição de campos - gerar campos de culturas aleatórias para o gazebo da ignição.
- Unity-Robotics-Hub-Repositório Central para Ferramentas, Tutoriais, Recursos e Documentação para Simulação Robótica em Unidade.
- Bluesky - O objetivo do Bluesky é fornecer a todos que desejam visualizar, analisar ou simular o tráfego aéreo com uma ferramenta para fazê -lo sem restrições, licenças ou limitações.
- CLOE-Empowers desenvolvedores de componentes de software de direção automatizada, fornecendo uma interface unificada para a simulação de circuito fechado.
- Dynamic_Logistics_Warehouse - Simulação de Gazebo do ambiente de dinâmica em armazéns.
- OpenCDA - Uma estrutura generalizada para prototipagem de aplicações de automação de condução cooperativa de pilha completa no Carla+SUMO.
Eletrônica e mecânica
- HRIM - Um modelo de informação para hardware de robô.
- URDF - Repositório para Robô Unificado Robô Descrição Formato (URDF) Código de análise.
- Phobos - Um complemento para o Blender, permitindo criar modelos de robôs URDF, SDF e SMURF em um ambiente Wysiwyg.
- URDF -VIZ - Visualize o arquivo URDF/XACRO, o Visualizador de URDF funciona no Windows/MacOS/Linux.
- SOLILWORKS_URDF_EXPORTER - SOLIDWORKS para Exportador de URDF.
- Freecad - seu próprio modelador paramétrico 3D.
- KICAD - uma plataforma cruzada e um conjunto de automação de design eletrônico de código aberto.
- PCBDRAW - Converta sua placa KICAD em um desenho 2D bonito, adequado para diagramas de pinagem.
- KiCAd-3rd-Party-Tools-Ferramentas feitas por outras pessoas para aumentar a suíte Kicad PCB EDA.
- PANDAPOWER - Uma ferramenta de código aberto fácil de usar para modelagem, análise e otimização do sistema de energia com um alto grau de automação.
- LIBREPCB - Uma ferramenta EDA poderosa, inovadora e intuitiva para todos.
- OpenSCAD - Um software para criar modelos CAD 3D sólidos.
- NGSPICE - Um simulador de especiarias de código aberto para circuitos elétricos e eletrônicos.
- GNSS-SDR-GNSS-SDR fornece interfaces para uma ampla gama de front-ends de radiofrequência e formatos de arquivo de amostra bruto, gera saídas de processamento em formatos padrão.
- RISCV - A arquitetura gratuita e aberta do conjunto de instruções RISC.
- URDFPY-Uma biblioteca simples e fácil de usar para carregar, manipular, salvar e visualizar arquivos URDF.
- FMPY - simular unidades de maquete funcionais (FMUS) em Python.
- FMIKIT-SIMULINK-Importar e exportar unidades de maquete funcionais com simulink.
- OEMOF -Solph - Uma estrutura de código aberto modular para modelar sistemas de fornecimento de energia.
- NASA-3D-RESOURCES-Aqui você encontrará uma coleção crescente de modelos 3D, texturas e imagens de dentro da NASA.
- Avera - Uma caixa de ferramentas de design de aeronaves.
- OPEM - A ferramenta de simulação PEMFC de código aberto (OPEM) é uma ferramenta de modelagem para avaliar o desempenho das células de combustível da membrana de troca de prótons.
- PVLIB -Python - Uma ferramenta suportada pela comunidade que fornece um conjunto de funções e classes para simular o desempenho de sistemas de energia fotovoltaica.
- Wireviz - Uma ferramenta para documentar facilmente cabos, arnês de fiação e pinças de conector.
- Horizon-O EDA é um pacote de automação de design eletrônico que suporta um fluxo de trabalho de ponta a ponta integrado para o design da placa de circuito impressa, incluindo gerenciamento de peças e entrada esquemática.
- Tigl - A biblioteca de geometria Tigl pode ser usada para o cálculo e processamento de geometrias de aeronaves armazenadas dentro de arquivos CPACS.
- foxBMS - A free, open and flexible development environment to design battery management systems.
- cadCAD - A Python package that assists in the processes of designing, testing and validating complex systems through simulation, with support for Monte Carlo methods, A/B testing and parameter sweeping.
- OpenMDAO - An open-source framework for efficient multidisciplinary optimization.
- ODrive - The aim is to make it possible to use inexpensive brushless motors in high performance robotics projects.
- OpenTirePython - An open-source mathematical tire modelling library.
- Inkscape Ray Optics - An extension for Inkscape that makes it easier to draw optical diagrams.
- OpenAeroStruct - A lightweight tool that performs aerostructural optimization using OpenMDAO.
Sensor Processing
Calibration and Transformation
- tf2 - Transform library, which lets the user keep track of multiple coordinate frames over time.
- TriP - A Inverse Kinematics library for serial robots, parallel robots and hybrids of both.
- lidar_align - A simple method for finding the extrinsic calibration between a 3D lidar and a 6-dof pose sensor.
- kalibr - The Kalibr visual-inertial calibration toolbox.
- Calibnet - Self-Supervised Extrinsic Calibration using 3D Spatial Transformer Networks.
- lidar_camera_calibration - ROS package to find a rigid-body transformation between a LiDAR and a camera.
- ILCC - Reflectance Intensity Assisted Automatic and Accurate Extrinsic Calibration of 3D LiDAR.
- easy_handeye - Simple, straighforward ROS library for hand-eye calibration.
- imu_utils - A ROS package tool to analyze the IMU performance.
- kalibr_allan - IMU Allan standard deviation charts for use with Kalibr and inertial kalman filters.
- pyquaternion - A full-featured Python module for representing and using quaternions.
- robot_calibration - This package offers calibration of a number of parameters of a robot, such as: 3D Camera intrinsics, extrinsics Joint angle offsets and robot frame offsets.
- multi_sensor_calibration - Contains a calibration tool to calibrate a sensor setup consisting of lidars, radars and cameras.
- LiDARTag - A Real-Time Fiducial Tag using Point Clouds Lidar Data.
- multicam_calibration - Extrinsic and intrinsic calbration of cameras.
- ikpy - An Inverse Kinematics library aiming performance and modularity.
- livox_camera_lidar_calibration - Calibrate the extrinsic parameters between Livox LiDAR and camera.
- lidar_camera_calibration - Camera LiDAR Calibration using ROS, OpenCV, and PCL.
- e2calib - Contains code that implements video reconstruction from event data for calibration.
Perception Pipeline
- SARosPerceptionKitti - ROS package for the Perception (Sensor Processing, Detection, Tracking and Evaluation) of the KITTI Vision Benchmark Suite.
- multiple-object-tracking-lidar - C++ implementation to Detect, track and classify multiple objects using LIDAR scans or point cloud.
- cadrl_ros - ROS package for dynamic obstacle avoidance for ground robots trained with deep RL.
- AugmentedAutoencoder - RGB-based pipeline for object detection and 6D pose estimation.
- jsk_recognition - A stack for the perception packages which are used in JSK lab.
- GibsonEnv - Gibson Environments: Real-World Perception for Embodied Agents.
- morefusion - Multi-object Reasoning for 6D Pose Estimation from Volumetric Fusion.
- se(3)-TrackNet - A package for 6D pose tracking of dynamic objects when object's CAD model is available.
Aprendizado de máquina
- DLIB - A toolkit for making real world machine learning and data analysis applications in C++.
- fastai - The fastai library simplifies training fast and accurate neural nets using modern best practices.
- tpot - A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming.
- deap - Distributed Evolutionary Algorithms in Python.
- gym - A toolkit for developing and comparing reinforcement learning algorithms.
- tensorflow_ros_cpp - A ROS package that allows to do Tensorflow inference in C++ without the need to compile TF yourself.
- Tensorflow Federated - TensorFlow Federated (TFF) is an open-source framework for machine learning and other computations on decentralized data.
- finn - Fast, Scalable Quantized Neural Network Inference on FPGAs.
- neuropod - Neuropod is a library that provides a uniform interface to run deep learning models from multiple frameworks in C++ and Python.
- leela-zero - This is a fairly faithful reimplementation of the system described in the Alpha Go Zero paper "Mastering the Game of Go without Human Knowledge".
- Trax - A library for deep learning that focuses on sequence models and reinforcement learning.
- mlflow - A platform to streamline machine learning development, including tracking experiments, packaging code into reproducible runs, and sharing and deploying models.
- Netron - Visualizer for neural network, deep learning and machine learning models.
- MNN - A blazing fast, lightweight deep learning framework, battle-tested by business-critical use cases in Alibaba.
- Tensorforce - An open-source deep reinforcement learning framework, with an emphasis on modularized flexible library design and straightforward usability for applications in research and practice.
- Dopamine - A research framework for fast prototyping of reinforcement learning algorithms.
- catalyst - Was developed with a focus on reproducibility, fast experimentation and code/ideas reusing.
- ray - A fast and simple framework for building and running distributed applications.
- tf-agents - A reliable, scalable and easy to use TensorFlow library for Contextual Bandits and Reinforcement Learning.
- ReAgent - An open source end-to-end platform for applied reinforcement learning (RL) developed and used at Facebook.
- Awesome-Mobile-Machine-Learning - A curated list of awesome mobile machine learning resources for iOS, Android, and edge devices.
- cnn-explainer - Learning Convolutional Neural Networks with Interactive Visualization.
- modelzoo - A collection of machine-learned models for use in autonomous driving applications.
- nnstreamer-ros - A set of Gstreamer plugins and ROS examples that allow Gstreamer developers to adopt neural network models easily and efficiently and neural network developers to manage neural network pipelines and their filters easily and efficiently.
Parallel Processing
- dask - Parallel computing with task scheduling for Python.
- cupy - NumPy-like API accelerated with CUDA.
- Thrust - A C++ parallel programming library which resembles the C++ Standard Library.
- ArrayFire - A general purpose GPU library.
- OpenMP - An application programming interface that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran.
- VexCL - VexCL is a C++ vector expression template library for OpenCL/CUDA/OpenMP.
- PYNQ - An open-source project from Xilinx that makes it easy to design embedded systems with Zynq All Programmable Systems on Chips.
- numba - NumPy aware dynamic Python compiler using LLVM.
- TensorRT - A C++ library for high performance inference on NVIDIA GPUs and deep learning accelerators.
- libcudacxx - Provides a heterogeneous implementation of the C++ Standard Library that can be used in and between CPU and GPU code.
Image Processing
- CV-pretrained-model - A collection of computer vision pre-trained models.
- image_pipeline - Fills the gap between getting raw images from a camera driver and higher-level vision processing.
- gstreamer - A pipeline-based multimedia framework that links together a wide variety of media processing systems to complete complex workflows.
- ros2_openvino_toolkit - Provides a ROS-adaptered runtime framework of neural network which quickly deploys applications and solutions for vision inference.
- vision_visp - Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package.
- apriltag_ros - A ROS wrapper of the AprilTag 3 visual fiducial detector.
- deep_object_pose - Deep Object Pose Estimation.
- DetectAndTrack - Detect-and-Track: Efficient Pose.
- SfMLearner - An unsupervised learning framework for depth and ego-motion estimation.
- imgaug - Image augmentation for machine learning experiments.
- vision_opencv - Packages for interfacing ROS with OpenCV, a library of programming functions for real time computer vision.
- darknet_ros - YOLO ROS: Real-Time Object Detection for ROS.
- ros_ncnn - YOLACT / YOLO ( among other things ) on NCNN inference engine for ROS.
- tf-pose-estimation - Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.
- find-object - Simple Qt interface to try OpenCV implementations of SIFT, SURF, FAST, BRIEF and other feature detectors and descriptors.
- yolact - A simple, fully convolutional model for real-time instance segmentation.
- Kimera-Semantics - Real-Time 3D Semantic Reconstruction from 2D data.
- detectron2 - A next-generation research platform for object detection and segmentation.
- OpenVX - Enables performance and power-optimized computer vision processing, especially important in embedded and real-time use cases.
- 3d-vehicle-tracking - Official implementation of Joint Monocular 3D Vehicle Detection and Tracking.
- pysot - The goal of PySOT is to provide a high-quality, high-performance codebase for visual tracking research.
- semantic_slam - Real time semantic slam in ROS with a hand held RGB-D camera.
- kitti_scan_unfolding - We propose KITTI scan unfolding in our paper Scan-based Semantic Segmentation of LiDAR Point Clouds: An Experimental Study.
- packnet-sfm - Official PyTorch implementation of self-supervised monocular depth estimation methods invented by the ML Team at Toyota Research Institute (TRI).
- AB3DMOT - This work proposes a simple yet accurate real-time baseline 3D multi-object tracking system.
- monoloco - Official implementation of "MonoLoco: Monocular 3D Pedestrian Localization and Uncertainty Estimation" in PyTorch.
- Poly-YOLO - Builds on the original ideas of YOLOv3 and removes two of its weaknesses: a large amount of rewritten labels and inefficient distribution of anchors.
- satellite-image-deep-learning - Resources for deep learning with satellite & aerial imagery.
- robosat - Semantic segmentation on aerial and satellite imagery.
- big_transfer - Model for General Visual Representation Learning created by Google Research.
- LEDNet - A Lightweight Encoder-Decoder Network for Real-time Semantic Segmentation.
- TorchSeg - This project aims at providing a fast, modular reference implementation for semantic segmentation models using PyTorch.
- simpledet - A Simple and Versatile Framework for Object Detection and Instance Recognition.
- meshroom - Meshroom is a free, open-source 3D Reconstruction Software based on the AliceVision Photogrammetric Computer Vision framework.
- EasyOCR - Ready-to-use Optical character recognition (OCR) with 40+ languages supported including Chinese, Japanese, Korean and Thai.
- pytracking - A general python framework for visual object tracking and video object segmentation, based on PyTorch.
- ros_deep_learning - Deep learning inference nodes for ROS with support for NVIDIA Jetson TX1/TX2/Xavier and TensorRT.
- hyperpose - HyperPose: A Flexible Library for Real-time Human Pose Estimation.
- fawkes - Privacy preserving tool against facial recognition systems.
- anonymizer - An anonymizer to obfuscate faces and license plates.
- opendatacam - Only saves surveyed meta-data, in particular the path an object moved or number of counted objects at a certain point.
- Cam2BEV - TensorFlow Implementation for Computing a Semantically Segmented Bird's Eye View (BEV) Image Given the Images of Multiple Vehicle-Mounted Cameras.
- flownet2-pytorch - Pytorch implementation of FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks.
- Simd - C++ image processing and machine learning library with using of SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX(Altivec) and VSX(Power7), NEON for ARM.
- AliceVision - A Photogrammetric Computer Vision Framework which provides a 3D Reconstruction and Camera Tracking algorithms.
- satpy - A python library for reading and manipulating meteorological remote sensing data and writing it to various image and data file formats.
- eo-learn - A collection of open source Python packages that have been developed to seamlessly access and process spatio-temporal image sequences acquired by any satellite fleet in a timely and automatic manner.
- libvips - A fast image processing library with low memory needs.
Radar Processing
- pyroSAR - Framework for large-scale SAR satellite data processing.
- CameraRadarFusionNet - TUM Roborace Team Software Stack - Path tracking control, velocity control, curvature control and state estimation.
Lidar and Point Cloud Processing
- cilantro - A lean C++ library for working with point cloud data.
- open3d - Open3D: A Modern Library for 3D Data Processing.
- SqueezeSeg - Implementation of SqueezeSeg, convolutional neural networks for LiDAR point clout segmentation.
- point_cloud_io - ROS nodes to read and write point clouds from and to files (eg ply, vtk).
- python-pcl - Python bindings to the pointcloud library.
- libpointmatcher - An "Iterative Closest Point" library for 2-D/3-D mapping in Robotics.
- depth_clustering - Fast and robust clustering of point clouds generated with a Velodyne sensor.
- lidar-bonnetal - Semantic and Instance Segmentation of LiDAR point clouds for autonomous driving.
- CSF - LiDAR point cloud ground filtering / segmentation (bare earth extraction) method based on cloth simulation.
- robot_body_filter - A highly configurable LaserScan/PointCloud2 filter that allows to dynamically remove the 3D body of the robot from the measurements.
- grid_map - Universal grid map library for mobile robotic mapping.
- elevation_mapping - Robot-centric elevation mapping for rough terrain navigation.
- rangenet_lib - Contains simple usage explanations of how the RangeNet++ inference works with the TensorRT and C++ interface.
- pointcloud_to_laserscan - Converts a 3D Point Cloud into a 2D laser scan.
- octomap - An Efficient Probabilistic 3D Mapping Framework Based on Octrees.
- pptk - Point Processing Toolkit from HEREMaps.
- gpu-voxels - GPU-Voxels is a CUDA based library which allows high resolution volumetric collision detection between animated 3D models and live pointclouds from 3D sensors of all kinds.
- spatio_temporal_voxel_layer - A new voxel layer leveraging modern 3D graphics tools to modernize navigation environmental representations.
- LAStools - Award-winning software for efficient LiDAR processing.
- PCDet - A general PyTorch-based codebase for 3D object detection from point cloud.
- PDAL - A C++ BSD library for translating and manipulating point cloud data.
- PotreeConverter - Builds a potree octree from las, laz, binary ply, xyz or ptx files.
- fast_gicp - A collection of GICP-based fast point cloud registration algorithms.
- ndt_omp - Multi-threaded and SSE friendly NDT algorithm.
- laser_line_extraction - A ROS packages that extracts line segments from LaserScan messages.
- Go-ICP - Implementation of the Go-ICP algorithm for globally optimal 3D pointset registration.
- PointCNN - A simple and general framework for feature learning from point clouds.
- segmenters_lib - The LiDAR segmenters library, for segmentation-based detection.
- MotionNet - Joint Perception and Motion Prediction for Autonomous Driving Based on Bird's Eye View Maps.
- PolarSeg - An Improved Grid Representation for Online LiDAR Point Clouds Semantic Segmentation.
- traversability_mapping - Takes in point cloud from a Velodyne VLP-16 Lidar and outputs a traversability map for autonomous navigation in real-time.
- lidar_super_resolution - Simulation-based Lidar Super-resolution for Ground Vehicles.
- Cupoch - A library that implements rapid 3D data processing and robotics computation using CUDA.
- linefit_ground_segmentation - Implementation of the ground segmentation algorithm.
- Draco - A library for compressing and decompressing 3D geometric meshes and point clouds.
- Votenet - Deep Hough Voting for 3D Object Detection in Point Clouds.
- lidar_undistortion - Provides lidar motion undistortion based on an external 6DoF pose estimation input.
- superpoint_graph - Large-scale Point Cloud Semantic Segmentation with Superpoint Graphs.
- RandLA-Net - Efficient Semantic Segmentation of Large-Scale Point Clouds.
- Det3D - A first 3D Object Detection toolbox which provides off the box implementations of many 3D object detection algorithms such as PointPillars, SECOND, PIXOR.
- OverlapNet - A modified Siamese Network that predicts the overlap and relative yaw angle of a pair of range images generated by 3D LiDAR scans.
- mp2p_icp - A repertory of multi primitive-to-primitive (MP2P) ICP algorithms in C++.
- OpenPCDet - A Toolbox for LiDAR-based 3D Object Detection.
- torch-points3d - Pytorch framework for doing deep learning on point clouds.
- PolyFit - Polygonal Surface Reconstruction from Point Clouds.
- mmdetection3d - Next-generation platform for general 3D object detection.
- gpd - Takes a point cloud as input and produces pose estimates of viable grasps as output.
- SalsaNext - Uncertainty-aware Semantic Segmentation of LiDAR Point Clouds for Autonomous Driving.
- Super-Fast-Accurate-3D-Object-Detection - Super Fast and Accurate 3D Object Detection based on 3D LiDAR Point Clouds (The PyTorch implementation).
- kaolin - A PyTorch Library for Accelerating 3D Deep Learning Research.
- CamVox - A low-cost SLAM system based on camera and Livox lidar.
- SA-SSD - Structure Aware Single-stage 3D Object Detection from Point Cloud.
- cuda-pcl - Accelerating Lidar for Robotics with NVIDIA CUDA-based PCL.
- urban_road_filter - Real-time LIDAR-based Urban Road and Sidewalk detection for Autonomous Vehicles.
- Removert - Remove then revert. Static map construction in the wild and dynamic points removing tool by constructing a static map.
- KISS-ICP - A LiDAR Odometry pipeline that just works on most of the cases without tunning any parameter.
Localization and State Estimation
- evo - Python package for the evaluation of odometry and SLAM.
- robot_localization - A package of nonlinear state estimation nodes.
- fuse - General architecture for performing sensor fusion live on a robot.
- GeographicLib - A C++ library for geographic projections.
- ntripbrowser - A Python API for browsing NTRIP (Networked Transport of RTCM via Internet Protocol).
- imu_tools - IMU-related filters and visualizers.
- RTKLIB - A version of RTKLIB optimized for single and dual frequency low cost GPS receivers, especially u-blox receivers.
- gLAB - Performs precise modeling of GNSS observables (pseudorange and carrier phase) at the centimetre level, allowing standalone GPS positioning, PPP, SBAS and DGNSS.
- ai-imu-dr - Contains the code of our novel accurate method for dead reckoning of wheeled vehicles based only on an IMU.
- Kalman-and-Bayesian-Filters-in-Python - Kalman Filter book using Jupyter Notebook.
- mcl_3dl - A ROS node to perform a probabilistic 3-D/6-DOF localization system for mobile robots with 3-D LIDAR(s).
- se2lam - On-SE(2) Localization and Mapping for Ground Vehicles by Fusing Odometry and Vision.
- mmWave-localization-learning - ML-based positioning method from mmWave transmissions - with high accuracy and energy efficiency.
- dynamic_robot_localization - A ROS package that offers 3 DoF and 6 DoF localization using PCL and allows dynamic map update using OctoMap.
- eagleye - An open-source software for vehicle localization utilizing GNSS and IMU.
- python-sgp4 - Python version of the SGP4 satellite position library.
- PROJ - Cartographic Projections and Coordinate Transformations Library.
- rpg_trajectory_evaluation - Implements common used trajectory evaluation methods for visual(-inertial) odometry.
- pymap3d - Pure-Python (Numpy optional) 3D coordinate conversions for geospace ecef enu eci.
- libRSF - A robust sensor fusion library for online localization.
Simultaneous Localization and Mapping
Lidar
- KISS-ICP - A LiDAR Odometry pipeline that just works on most of the cases without tunning any parameter.
- loam_velodyne - Laser Odometry and Mapping (Loam) is a realtime method for state estimation and mapping using a 3D lidar.
- lio-mapping - Implementation of Tightly Coupled 3D Lidar Inertial Odometry and Mapping (LIO-mapping).
- A-LOAM - Advanced implementation of LOAM.
- Fast LOAM - Fast and Optimized Lidar Odometry And Mapping.
- LIO_SAM - Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping.
- cartographer_ros - Provides ROS integration for Cartographer.
- loam_livox - A robust LiDAR Odometry and Mapping (LOAM) package for Livox-LiDAR.
- StaticMapping - Use LiDAR to map the static world.
- semantic_suma - Semantic Mapping using Surfel Mapping and Semantic Segmentation.
- slam_toolbox - Slam Toolbox for lifelong mapping and localization in potentially massive maps with ROS .
- maplab - An open visual-inertial mapping framework.
- hdl_graph_slam - An open source ROS package for real-time 6DOF SLAM using a 3D LIDAR.
- interactive_slam - In contrast to existing automatic SLAM packages, we with minimal human effort.
- LeGO-LOAM - Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain.
- pyslam - Contains a monocular Visual Odometry (VO) pipeline in Python.
- Kitware SLAM - LiDAR-only visual SLAM developped by Kitware, as well as ROS and ParaView wrappings for easier use.
- horizon_highway_slam - A robust, low drift, and real time highway SLAM package suitable for Livox Horizon lidar.
- mola - A Modular System for Localization and Mapping.
- DH3D - Deep Hierarchical 3D Descriptors for Robust Large-Scale 6DOF Relocalization.
- LaMa - LaMa is a C++11 software library for robotic localization and mapping.
- Scan Context - Global LiDAR descriptor for place recognition and long-term localization.
- M-LOAM - Robust Odometry and Mapping for Multi-LiDAR Systems with Online Extrinsic Calibration.
Visual
- orb_slam_2_ros - A ROS implementation of ORB_SLAM2.
- orbslam-map-saving-extension - In this extensions the map of ORB-features be saved to the disk as a reference for future runs along the same track.
- dso - Direct Sparse Odometry.
- viso2 - A ROS wrapper for libviso2, a library for visual odometry.
- xivo - X Inertial-aided Visual Odometry.
- rovio - Robust Visual Inertial Odometry Framework.
- LSD-SLAM - Large-Scale Direct Monocular SLAM is a real-time monocular SLAM.
- CubeSLAM and ORB SLAM - Monocular 3D Object Detection and SLAM Package of CubeSLAM and ORB SLAM.
- VINS-Fusion - A Robust and Versatile Multi-Sensor Visual-Inertial State Estimator.
- openvslam - OpenVSLAM: A Versatile Visual SLAM Framework.
- basalt - Visual-Inertial Mapping with Non-Linear Factor Recovery.
- Kimera - A C++ library for real-time metric-semantic simultaneous localization and mapping, which uses camera images and inertial data to build a semantically annotated 3D mesh of the environment.
- tagslam - A ROS-based package for Simultaneous Localization and Mapping using AprilTag fiducial markers.
- LARVIO - A lightweight, accurate and robust monocular visual inertial odometry based on Multi-State Constraint Kalman Filter.
- fiducials - Simultaneous localization and mapping using fiducial markers.
- open_vins - An open source platform for visual-inertial navigation research.
- ORB_SLAM3 - ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM.
- Atlas - End-to-End 3D Scene Reconstruction from Posed Images.
- vilib - This library focuses on the front-end of VIO pipelines with CUDA.
- hloc - A modular toolbox for state-of-the-art 6-DoF visual localization. It implements Hierarchical Localization, leveraging image retrieval and feature matching, and is fast, accurate, and scalable.
- ESVO - A novel pipeline for real-time visual odometry using a stereo event-based camera.
- gradslam - An open source differentiable dense SLAM library for PyTorch.
Vector Map
- OpenDRIVE - An open file format for the logical description of road networks.
- MapsModelsImporter - A Blender add-on to import models from google maps.
- Lanelet2 - Map handling framework for automated driving.
- barefoot - Online and Offline map matching that can be used stand-alone and in the cloud.
- iD - The easy-to-use OpenStreetMap editor in JavaScript.
- RapiD - An enhanced version of iD for mapping with AI created by Facebook.
- segmap - A map representation based on 3D segments.
- Mapbox - A JavaScript library for interactive, customizable vector maps on the web.
- osrm-backend - Open Source Routing Machine - C++ backend.
- assuremapingtools - Desktop based tool for viewing, editing and saving road network maps for autonomous vehicle platforms such as Autoware.
- geopandas - A project to add support for geographic data to pandas objects.
- MapToolbox - Plugins to make Autoware vector maps in Unity.
- imagery-index - An index of aerial and satellite imagery useful for mapping.
- mapillary_tools - A library for processing and uploading images to Mapillary.
- mapnik - Combines pixel-perfect image output with lightning-fast cartographic algorithms, and exposes interfaces in C++, Python, and Node.
- gdal - GDAL is an open source X/MIT licensed translator library for raster and vector geospatial data formats.
- grass - GRASS GIS - free and open source Geographic Information System (GIS).
- 3d-tiles - Specification for streaming massive heterogeneous 3D geospatial datasets.
- osmnx - Python for street networks. Retrieve, model, analyze, and visualize street networks and other spatial data from OpenStreetMap.
Prediction
- Awesome-Interaction-aware-Trajectory-Prediction - A selection of state-of-the-art research materials on trajectory prediction.
- sgan - Socially Acceptable Trajectories with Generative Adversarial Networks.
Behavior and Decision
- Groot - Graphical Editor to create BehaviorTrees. Compliant with BehaviorTree.CPP.
- BehaviorTree.CPP - Behavior Trees Library in C++.
- RAFCON - Uses hierarchical state machines, featuring concurrent state execution, to represent robot programs.
- ROSPlan - Generic framework for task planning in a ROS system.
- ad-rss-lib - Library implementing the Responsibility Sensitive Safety model (RSS) for Autonomous Vehicles.
- FlexBE - Graphical editor for hierarchical state machines, based on ROS's smach.
- sts_bt_library - This library provides the functionality to set up your own behavior tree logic by using the defined tree structures like Fallback, Sequence or Parallel Nodes.
- SMACC - An Event-Driven, Asynchronous, Behavioral State Machine Library for real-time ROS (Robotic Operating System) applications written in C++ .
- py_trees_ros - Behaviours, trees and utilities that extend py_trees for use with ROS.
Planning and Control
- pacmod - Designed to allow the user to control a vehicle with the PACMod drive-by-wire system.
- mpcc - Model Predictive Contouring Controller for Autonomous Racing.
- rrt - C++ RRT (Rapidly-exploring Random Tree) implementation.
- HypridAStarTrailer - A path planning algorithm based on Hybrid A* for trailer truck.
- path_planner - Hybrid A* Path Planner for the KTH Research Concept Vehicle.
- open_street_map - ROS packages for working with Open Street Map geographic information.
- Open Source Car Control - An assemblage of software and hardware designs that enable computer control of modern cars in order to facilitate the development of autonomous vehicle technology.
- fastrack - A ROS implementation of Fast and Safe Tracking (FaSTrack).
- commonroad - Composable benchmarks for motion planning on roads.
- traffic-editor - A graphical editor for robot traffic flows.
- steering_functions - Contains a C++ library that implements steering functions for car-like robots with limited turning radius.
- moveit - Easy-to-use robotics manipulation platform for developing applications, evaluating designs, and building integrated products.
- flexible-collision-library - A library for performing three types of proximity queries on a pair of geometric models composed of triangles.
- aikido - Artificial Intelligence for Kinematics, Dynamics, and Optimization.
- casADi - A symbolic framework for numeric optimization implementing automatic differentiation in forward and reverse modes on sparse matrix-valued computational graphs.
- ACADO Toolkit - A software environment and algorithm collection for automatic control and dynamic optimization.
- control-toolbox - An efficient C++ library for control, estimation, optimization and motion planning in robotics.
- CrowdNav - Crowd-aware Robot Navigation with Attention-based Deep Reinforcement Learning.
- ompl - Consists of many state-of-the-art sampling-based motion planning algorithms.
- openrave - Open Robotics Automation Virtual Environment: An environment for testing, developing, and deploying robotics motion planning algorithms.
- teb_local_planner - An optimal trajectory planner considering distinctive topologies for mobile robots based on Timed-Elastic-Bands.
- pinocchio - A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives.
- rmf_core - The rmf_core packages provide the centralized functions of the Robotics Middleware Framework (RMF).
- OpEn - A solver for Fast & Accurate Embedded Optimization for next-generation Robotics and Autonomous Systems.
- autogenu-jupyter - This project provides the continuation/GMRES method (C/GMRES method) based solvers for nonlinear model predictive control (NMPC) and an automatic code generator for NMPC.
- global_racetrajectory_optimization - This repository contains multiple approaches for generating global racetrajectories.
- toppra - A library for computing the time-optimal path parametrization for robots subject to kinematic and dynamic constraints.
- tinyspline - TinySpline is a small, yet powerful library for interpolating, transforming, and querying arbitrary NURBS, B-Splines, and Bézier curves.
- dual quaternions ros - ROS python package for dual quaternion SLERP.
- mb planner - Aerial vehicle planner for tight spaces. Used in DARPA SubT Challenge.
- ilqr - Iterative Linear Quadratic Regulator with auto-differentiatiable dynamics models.
- EGO-Planner - A lightweight gradient-based local planner without ESDF construction, which significantly reduces computation time compared to some state-of-the-art methods.
- pykep - A scientific library providing basic tools for research in interplanetary trajectory design.
- am_traj - Alternating Minimization Based Trajectory Generation for Quadrotor Aggressive Flight.
- GraphBasedLocalTrajectoryPlanner - Was used on a real race vehicle during the Roborace Season Alpha and achieved speeds above 200km/h.
- se2_navigation - Pure pursuit controller and Reeds-Shepp sampling based planner for navigation in SE(2) space.
- Ruckig - Instantaneous Motion Generation. Em tempo real. Jerk-constrained. Time-optimal.
User Interaction
Graphical User Interface
- imgui - Designed to enable fast iterations and to empower programmers to create content creation tools and visualization / debug tools.
- qtpy - Provides an uniform layer to support PyQt5, PySide2, PyQt4 and PySide with a single codebase.
- mir - Mir is set of libraries for building Wayland based shells.
- rqt - A Qt-based framework for GUI development for ROS. It consists of three parts/metapackages.
- cage - This is Cage, a Wayland kiosk. A kiosk runs a single, maximized application.
- chilipie - Easy-to-use Raspberry Pi image for booting directly into full-screen Chrome.
- pencil - A tool for making diagrams and GUI prototyping that everyone can use.
- dynamic_reconfigure - The focus of dynamic_reconfigure is on providing a standard way to expose a subset of a node's parameters to external reconfiguration.
- ddynamic_reconfigure - Allows modifying parameters of a ROS node using the dynamic_reconfigure framework without having to write cfg files.
- elements - A lightweight, fine-grained, resolution independent, modular GUI library.
- NanoGUI - A minimalistic cross-platform widget library for OpenGL 3.x or higher.
Acoustic User Interface
- pyo - A Python module written in C containing classes for a wide variety of audio signal processing types.
- rhasspy - Rhasspy (pronounced RAH-SPEE) is an offline, multilingual voice assistant toolkit inspired by Jasper that works well with Home Assistant, Hass.io, and Node-RED.
- mycroft-core - Mycroft is a hackable open source voice assistant.
- DDSP - A library of differentiable versions of common DSP functions (such as synthesizers, waveshapers, and filters).
- NoiseTorch - Creates a virtual microphone that suppresses noise, in any application.
- DeepSpeech - An open source Speech-To-Text engine, using a model trained by machine learning techniques based on Baidu's Deep Speech research paper.
- waveglow - A Flow-based Generative Network for Speech Synthesis.
- TTS - A deep learning toolkit for Text-to-Speech, battle-tested in research and production.
Command Line Interface
- the-art-of-command-line - Master the command line, in one page.
- dotfiles of cornerman - Powerful zsh and vim dotfiles.
- dotbot - A tool that bootstraps your dotfiles.
- prompt-hjem - A beautiful zsh prompt.
- AG - Uma ferramenta de busca de código semelhante à ACK, mas mais rápida.
- FZF - Um Finder Fuzzy da linha de comando.
- pkgtop - Interactive package manager and resource monitor designed for the GNU/Linux.
- asciimatics - A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations.
- gocui - Minimalist Go package aimed at creating Console User Interfaces.
- TerminalImageViewer - Small C++ program to display images in a (modern) terminal using RGB ANSI codes and unicode block graphics characters.
- rosshow - Visualize ROS topics inside a terminal with Unicode/ASCII art.
- python-prompt-toolkit - Library for building powerful interactive command line applications in Python.
- guake - Drop-down terminal for GNOME.
- wemux - Multi-User Tmux Made Easy.
- tmuxp - A session manager built on libtmux.
- mapscii - World map renderer for your console.
- terminator - The goal of this project is to produce a useful tool for arranging terminals.
- Bat - um gato (1) clone com asas.
- fx - Command-line tool and terminal JSON viewer.
- tmate - Instant terminal sharing.
Data Visualization and Mission Control
- xdot - Interactive viewer for graphs written in Graphviz's dot language.
- guacamole - Clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.
- ros3djs - 3D Visualization Library for use with the ROS JavaScript Libraries.
- webviz - Web-based visualization libraries like rviz.
- plotly.py - An open-source, interactive graphing library for Python.
- PlotJuggler - The timeseries visualization tool that you deserve.
- bokeh - Interactive Data Visualization in the browser, from Python.
- voila - From Jupyter notebooks to standalone web applications and dashboards.
- Pangolin - Pangolin is a lightweight portable rapid development library for managing OpenGL display / interaction and abstracting video input.
- rqt_bag - Provides a GUI plugin for displaying and replaying ROS bag files.
- kepler.gl - Kepler.gl is a powerful open source geospatial analysis tool for large-scale data sets.
- qgis_ros - Access bagged and live topic data in a highly featured GIS environment.
- openmct - A web based mission control framework.
- web_video_server - HTTP Streaming of ROS Image Topics in Multiple Formats.
- RVizWeb - Provides a convenient way of building and launching a web application with features similar to RViz.
- marvros - MAVLink to ROS gateway with proxy for Ground Control Station.
- octave - Provides a convenient command line interface for solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with Matlab.
- streetscape.gl - Streetscape.gl is a toolkit for visualizing autonomous and robotics data in the XVIZ protocol.
- urdf-loaders - URDF Loaders for Unity and THREE.js with example ATHLETE URDF File.
- obs-studio - Free and open source software for live streaming and screen recording.
- K3D-tools - Jupyter notebook extension for 3D visualization.
- PyQtGraph - Fast data visualization and GUI tools for scientific / engineering applications.
- ipygany - 3-D Scientific Visualization in the Jupyter Notebook.
- Foxglove Studio - Web and desktop app for robotics visualization and debugging; actively maintained fork of webviz.
- ROS-Mobile - Visualization and controlling application for Android.
Anotação
- labelbox - The fastest way to annotate data to build and ship artificial intelligence applications.
- PixelAnnotationTool - Annotate quickly images.
- LabelImg - A graphical image annotation tool and label object bounding boxes in images.
- cvat - Powerful and efficient Computer Vision Annotation Tool (CVAT).
- point_labeler - Tool for labeling of a single point clouds or a stream of point clouds.
- label-studio - Label Studio is a multi-type data labeling and annotation tool with standardized output format.
- napari - A fast, interactive, multi-dimensional image viewer for python.
- semantic-segmentation-editor - A web based labeling tool for creating AI training data sets (2D and 3D).
- 3d-bat - 3D Bounding Box Annotation Tool for Point cloud and Image Labeling.
- labelme - Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation).
- universal-data-tool - Collaborate & label any type of data, images, text, or documents, in an easy web interface or desktop app.
- BMW-Labeltool-Lite - Provides you with a easy to use labeling tool for State-of-the-art Deep Learning training purposes.
- 3d-annotation-tool - Lightweight tool to annotate point clouds with bounding boxes, rectangles, keypoints and more.
Point Cloud
- CloudCompare - CloudCompare is a 3D point cloud (and triangular mesh) processing software.
- Potree - WebGL point cloud viewer for large datasets.
- point_cloud_viewer - Makes viewing massive point clouds easy and convenient.
- LidarView - Performs real-time visualization and easy processing of live captured 3D LiDAR data from Lidar sensors.
- VeloView - Performs real-time visualization of live captured 3D LiDAR data from Velodyne's HDL sensors.
- entwine - A data organization library for massive point clouds, designed to conquer datasets of trillions of points as well as desktop-scale point clouds.
- polyscope - A C++ & Python viewer for 3D data like meshes and point clouds.
- Pcx - Point cloud importer & renderer for Unity.
- ImmersivePoints - A web-application for virtual reality devices to explore 3D data in the most natural way possible.
RViz
- mapviz - Modular ROS visualization tool for 2D data.
- rviz_cinematographer - Easy to use tools to create and edit trajectories for the rviz camera.
- rviz_satellite - Display internet satellite imagery in RViz.
- rviz_visual_tools - C++ API wrapper for displaying shapes and meshes in Rviz.
- xpp - Visualization of motion-plans for legged robots.
- rviz stereo - 3D stereo rendering displays a different view to each eye so that the scene appears to have depth.
- jsk_visualization - Jsk visualization ros packages for rviz and rqt.
- moveit_visual_tools - Helper functions for displaying and debugging MoveIt! data in Rviz via published markers.
Operation System
Monitoring
- rosmon - ROS node launcher & monitoring daemon.
- multimaster_fkie - GUI-based management environment that is very useful to manage ROS-launch configurations and control running nodes.
- collectd - A small daemon which collects system information periodically and provides mechanisms to store and monitor the values in a variety of ways.
- lnav - An enhanced log file viewer that takes advantage of any semantic information that can be gleaned from the files being viewed, such as timestamps and log levels.
- htop - An interactive text-mode process viewer for Unix systems. Ele pretende ser um 'top' melhor.
- atop - System and process monitor for Linux with logging and replay function.
- psutil - Cross-platform lib for process and system monitoring in Python.
- gputil - A Python module for getting the GPU status from NVIDA GPUs using nvidia-smi programmically in Python.
- gpustat - A simple command-line utility for querying and monitoring GPU status.
- nvtop - NVIDIA GPUs htop like monitoring tool.
- ShellHub - ShellHub is a modern SSH server for remotely accessing linux devices via command line (using any SSH client) or web-based user interface, designed as an alternative to sshd. Think ShellHub as centralized SSH for the the edge and cloud computing.
- Sshwifty - Sshwifty is a SSH and Telnet connector made for the Web.
- spdlog - Very fast, header-only/compiled, C++ logging library.
- ctop - Top-like interface for container metrics.
- ntop - Web-based Traffic and Security Network Traffic Monitoring.
- jupyterlab-nvdashboard - A JupyterLab extension for displaying dashboards of GPU usage.
Database and Record
- ncdu - Ncdu is a disk usage analyzer with an ncurses interface.
- borg - Deduplicating archiver with compression and authenticated encryption.
- bag-database - A server that catalogs bag files and provides a web-based UI for accessing them.
- marv-robotics - MARV Robotics is a powerful and extensible data management platform.
- kitti2bag - Convert KITTI dataset to ROS bag file the easy way.
- pykitti - Python tools for working with KITTI data.
- rosbag_editor - Create a rosbag from a given one, using a simple GUI.
- nextcloud - Nextcloud is a suite of client-server software for creating and using file hosting services.
- ros_type_introspection - Deserialize ROS messages that are unknown at compilation time.
- syncthing - A continuous file synchronization program.
- rqt_bag_exporter - Qt GUI to export ROS bag topics to files (CSV and/or video).
- xviz - A protocol for real-time transfer and visualization of autonomy data.
- kitti_to_rosbag - A Dataset tools for working with the KITTI dataset raw data and converting it to a ROS bag. Also allows a library for direct access to poses, velodyne scans, and images.
- ros_numpy - Tools for converting ROS messages to and from numpy arrays.
- kitti_ros - A ROS-based player to replay KiTTI dataset.
- DuckDB - An embeddable SQL OLAP Database Management System.
Network Distributed File System
- sshfs - File system based on the SSH File Transfer Protocol.
- moosefs - A scalable distributed storage system.
- ceph - A distributed object, block, and file storage platform.
- nfs - A distributed file system protocol originally developed by Sun Microsystems.
- ansible-role-nfs - Installs NFS utilities on RedHat/CentOS or Debian/Ubuntu.
Server Infrastructure and High Performance Computing
- mass - Self-service, remote installation of Windows, CentOS, ESXi and Ubuntu on real servers turns your data centre into a bare metal cloud.
- polyaxon - A platform for reproducing and managing the whole life cycle of machine learning and deep learning applications.
- localstack - A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline.
- nvidia-docker - Build and run Docker containers leveraging NVIDIA GPUs.
- kubeflow - Machine Learning Toolkit for Kubernetes.
- log-pilot - Collect logs for docker containers.
- traefik - The Cloud Native Edge Router.
- graylog2-server - Free and open source log management.
- ansible - Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy.
- pyinfra - It can be used for ad-hoc command execution, service deployment, configuration management and more.
- docker-py - A Python library for the Docker Engine API.
- noVNC - VNC client using HTML5.
- Slurm - Slurm: A Highly Scalable Workload Manager.
- jupyterhub - Multi-user server for Jupyter notebooks.
- Portainer - Making Docker management easy.
- enroot - A simple, yet powerful tool to turn traditional container/OS images into unprivileged sandboxes.
- docker-firefox - Run a Docker Container with Firefox and noVNC for remote access to headless servers.
- luigi - A Python module that helps you build complex pipelines of batch jobs. It handles dependency resolution, workflow management, visualization etc. It also comes with Hadoop support built in.
- triton-inference-server - NVIDIA Triton Inference Server provides a cloud inferencing solution optimized for NVIDIA GPUs.
- cudf - Provides a pandas-like API that will be familiar to data engineers & data scientists, so they can use it to easily accelerate their workflows without going into the details of CUDA programming.
Embedded Operation System
- vxworks7-ros2-build - Build system to automate the build of VxWorks 7 and ROS2.
- Yocto - Produce tools and processes that enable the creation of Linux distributions for embedded software that are independent of the underlying architecture of the embedded hardware.
- Automotive Graded Linux - A collaborative open source project that is bringing together automakers, suppliers and technology companies to build a Linux-based, open software platform for automotive applications that can serve as the de facto industry standard.
- bitbake - A generic task execution engine that allows shell and Python tasks to be run efficiently and in parallel while working within complex inter-task dependency constraints.
- Jailhouse - Jailhouse is a partitioning Hypervisor based on Linux.
- Xen - An open-source (GPL) type-1 or baremetal hypervisor.
- QEMU - A generic and open source machine emulator and virtualizer.
- qemu-xilinx - A fork of Quick EMUlator (QEMU) with improved support and modelling for the Xilinx platforms.
- rosserial - A ROS client library for small, embedded devices, such as Arduino.
- meta-ros - OpenEmbedded Layer for ROS Applications.
- meta-balena - Run Docker containers on embedded devices.
- micro-ros - The major changes compared to "regular" ROS 2 is that micro-ROS uses a Real-Time Operating System (RTOS) instead of Linux, and DDS for eXtremely Resource Constrained Environments.
- nvidia-container-runtime - NVIDIA Container Runtime is a GPU aware container runtime, compatible with the Open Containers Initiative (OCI) specification used by Docker, CRI-O, and other popular container technologie.
- fusesoc - Package manager and build abstraction tool for FPGA/ASIC development.
- jetson_easy - Automatically script to setup and configure your NVIDIA Jetson.
- docker-jetpack-sdk - Allows for usage of the NVIDIA JetPack SDK within a docker container for download, flashing, and install.
- Pressed - Provides a way to set answers to questions asked during the installation process of debian, without having to manually enter the answers while the installation is running.
- jetson_stats - A package to monitoring and control your NVIDIA Jetson (Xavier NX, Nano, AGX Xavier, TX1, TX2) Works with all NVIDIA Jetson ecosystem.
- ros_jetson_stats - The ROS jetson-stats wrapper. The status of your NVIDIA jetson in diagnostic messages.
- OpenCR - Open-source Control Module for ROS.
- acrn-hypervisor - Defines a device hypervisor reference stack and an architecture for running multiple software subsystems, managed securely, on a consolidated system by means of a virtual machine manager.
- jetson-containers - Machine Learning Containers for Jetson and JetPack 4.4.
Real-Time Kernel
- ELISA - Project is to make it easier for companies to build and certify Linux-based safety-critical applications – systems whose failure could result in loss of human life, significant property damage or environmental damage.
- PREEMPT_RT kernel patch - Aim of the PREEMPT_RT kernel patch is to minimize the amount of kernel code that is non-preemptible.
Network and Middleware
- performance_test - Tool to test the performance of pub/sub based communication frameworks.
- realtime_support - Minimal real-time testing utility for measuring jitter and latency.
- ros1_bridge - ROS 2 package that provides bidirectional communication between ROS 1 and ROS 2.
- Fast-RTPS - A Protocol, which provides publisher-subscriber communications over unreliable transports such as UDP, as defined and maintained by the Object Management Group (OMG) consortium.
- protobuf - Google's data interchange format.
- opensplice - Vortex OpenSplice Community Edition.
- cyclonedds - Eclipse Cyclone DDS is a very performant and robust open-source DDS implementation.
- iceoryx - An IPC middleware for POSIX-based systems.
- rosbridge_suite - Provides a JSON interface to ROS, allowing any client to send JSON to publish or subscribe to ROS topics, call ROS services, and more.
- ros2arduino - This library helps the Arduino board communicate with the ROS2 using XRCE-DDS.
- eCAL - The enhanced communication abstraction layer (eCAL) is a middleware that enables scalable, high performance interprocess communication on a single computer node or between different nodes in a computer network.
- AUTOSAR-Adaptive - The implementation of AUTOSAR Adaptive Platform based on the R19-11.
- ocpp - The Open Charge Point Protocol (OCPP) is a network protocol for communication between electric vehicle chargers and a central backoffice system.
- micro-ROS for Arduino - A experimental micro-ROS library for baremetal projects based on Arduino IDE or Arduino CLI.
- mqtt_bridge - Provides a functionality to bridge between ROS and MQTT in bidirectional.
Ethernet and Wireless Networking
- SOES - SOES is an EtherCAT slave stack written in C.
- netplan - Simply create a YAML description of the required network interfaces and what each should be configured to do.
- airalab - AIRA is reference Robonomics network client for ROS-enabled cyber-physical systems.
- rdbox - RDBOX is a IT infrastructure for ROS robots.
- ros_ethercat - This is a reimplementation of the main loop of pr2_ethercat without dependencies on PR2 software.
- wavemon - An ncurses-based monitoring application for wireless network devices.
- wireless - Making info about wireless networks available to ROS.
- ptpd - PTP daemon (PTPd) is an implementation the Precision Time Protocol (PTP) version 2 as defined by 'IEEE Std 1588-2008'. PTP provides precise time coordination of Ethernet LAN connected computers.
- iperf - A TCP, UDP, and SCTP network bandwidth measurement tool.
- tcpreplay - Pcap editing and replay tools.
- nethogs - It groups bandwidth by process.
- pyshark - Python wrapper for tshark, allowing python packet parsing using wireshark dissectors.
- pingtop - Ping multiple servers and show results in a top-like terminal UI.
- TermShark - Uma interface do usuário do Terminal para Tshark, inspirada no Wireshark.
- udpreplay - Replay UDP packets from a pcap file.
- openwifi - Linux mac80211 compatible full-stack IEEE802.11/Wi-Fi design based on Software Defined Radio.
Controller Area Network
- awesome CAN - A curated list of awesome CAN bus tools, hardware and resources.
- AndrOBD - Android OBD diagnostics with any ELM327 adapter.
- ddt4all - DDT4All is a tool to create your own ECU parameters screens and connect to a CAN network with a cheap ELM327 interface.
- cabana - CAN visualizer and DBC maker.
- opendbc - The project to democratize access to the decoder ring of your car.
- libuavcan - An open lightweight protocol designed for reliable communication in aerospace and robotic applications over robust vehicular networks such as CAN bus.
- python-can - The can package provides controller area network support for Python developers.
- CANopenNode - The internationally standardized (EN 50325-4) (CiA301) CAN-based higher-layer protocol for embedded control system.
- python-udsoncan - Python implementation of UDS (ISO-14229) standard.
- uds-c - Unified Diagnostics Service (UDS) and OBD-II (On Board Diagnostics for Vehicles) C Library.
- cantools - CAN BUS tools in Python 3.
- CANdevStudio - CANdevStudio aims to be cost-effective replacement for CAN simulation software. It can work with variety of CAN hardware interfaces.
- can-utils - Linux-CAN / SocketCAN user space applications.
- ros_canopen - CANopen driver framework for ROS.
- decanstructor - The definitive ROS CAN analysis tool.
- kvaser_interface - This package was developed as a standardized way to access Kvaser CAN devices from ROS.
- canmatrix - Converting CAN Database Formats .arxml .dbc .dbf .kcd.
- autosar - A set of python modules for working with AUTOSAR XML files.
- canopen - A Python implementation of the CANopen standard. The aim of the project is to support the most common parts of the CiA 301 standard in a Pythonic interface.
- SavvyCAN - A Qt5 based cross platform tool which can be used to load, save, and capture canbus frames.
- Open-Vehicle-Monitoring-System-3 - The system provides live monitoring of vehicle metrics like state of charge, temperatures, tyre pressures and diagnostic fault conditions.
Sensor and Acuator Interfaces
- Tesla-API - Provides functionality to monitor and control the Model S (and future Tesla vehicles) remotely.
- flirpy - A Python library to interact with FLIR thermal imaging cameras and images.
- nerian_stereo - ROS node for Nerian's SceneScan and SP1 stereo vision sensors.
- pymmw - This is a toolbox composed of Python scripts to interact with TI's evaluation module (BoosterPack) for the IWR1443 mmWave sensing device.
- ti_mmwave_rospkg - TI mmWave radar ROS driver (with sensor fusion and hybrid).
- pacmod3 - This ROS node is designed to allow the user to control a vehicle with the PACMod drive-by-wire system, board revision 3.
- ros2_intel_realsense - These are packages for using Intel RealSense cameras (D400 series) with ROS2.
- sick_scan - This stack provides a ROS2 driver for the SICK TiM series of laser scanners.
- ouster_example - Sample code for connecting to and configuring the OS1, reading and visualizing data, and interfacing with ROS.
- ros2_ouster_drivers - These are an implementation of ROS2 drivers for the Ouster OS-1 3D lidars.
- livox_ros_driver - A new ROS package, specially used to connect LiDAR products produced by Livox.
- velodyne - A collection of ROS packages supporting Velodyne high definition 3D LIDARs.
- ublox - Provides support for u-blox GPS receivers.
- crazyflie_ros - ROS Driver for Bitcraze Crazyflie.
- pointgrey_camera_driver - ROS driver for Pt. Grey cameras, based on the official FlyCapture2 SDK.
- novatel_gps_driver - ROS driver for NovAtel GPS / GNSS receivers.
- pylon-ros-camera - The official pylon ROS driver for Basler GigE Vision and USB3 Vision cameras.
- ethz_piksi_ros - Contains (python) ROS drivers, tools, launch files, and wikis about how to use Piksi Real Time Kinematic (RTK) GPS device in ROS.
- sick_safetyscanners - A ROS Driver which reads the raw data from the SICK Safety Scanners and publishes the data as a laser_scan msg.
- bosch_imu_driver - A driver for the sensor IMU Bosch BNO055. It was implemented only the UART communication interface (correct sensor mode should be selected).
- oxford_gps_eth - Ethernet interface to OxTS GPS receivers using the NCOM packet structure.
- ifm3d - Library and Utilities for working with ifm pmd-based 3D ToF Cameras.
- cepton_sdk_redist - Provides ROS support for Cepton LiDAR.
- jetson_csi_cam - A ROS package making it simple to use CSI cameras on the Nvidia Jetson TK1, TX1, or TX2 with ROS.
- ros_astra_camera - A ROS driver for Orbbec 3D cameras.
- spot_ros - ROS Driver for Spot.
- blickfeld-scanner-lib - Cross-platform library to communicate with LiDAR devices of the Blickfeld GmbH.
- TauLidarCamera - The host-side API for building applications with the Tau LiDAR Camera.
Segurança
- owasp-threat-dragon-desktop - Threat Dragon is a free, open-source, cross-platform threat modeling application including system diagramming and a rule engine to auto-generate threats/mitigations.
- launch_ros_sandbox - Can define launch files running nodes in restrained environments, such as Docker containers or separate user accounts with limited privileges.
- wolfssl - A small, fast, portable implementation of TLS/SSL for embedded devices to the cloud.
- CANalyzat0r - Security analysis toolkit for proprietary car protocols.
- RSF - Robot Security Framework (RSF) is a standardized methodology to perform security assessments in robotics.
- How-to-Secure-A-Linux-Server - An evolving how-to guide for securing a Linux server.
- lynis - Security auditing tool for Linux, macOS, and UNIX-based systems. Assists with compliance testing (HIPAA/ISO27001/PCI DSS) and system hardening.
- OpenVPN - An open source VPN daemon.
- openfortivpn - A client for PPP+SSL VPN tunnel services and compatible with Fortinet VPNs.
- WireGuard - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography.
- ssh-auditor - Scans for weak ssh passwords on your network.
- vulscan - Advanced vulnerability scanning with Nmap NSE.
- nmap-vulners - NSE script based on Vulners.com API.
- brutespray - Automatically attempts default creds on found services.
- fail2ban - Daemon to ban hosts that cause multiple authentication errors.
- DependencyCheck - A software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.
- Firejail - A SUID sandbox program that reduces the risk of security breaches by restricting the running environment of untrusted applications using Linux namespaces, seccomp-bpf and Linux capabilities.
- RVD - Robot Vulnerability Database. Community-contributed archive of robot vulnerabilities and weaknesses.
- ros2_dds_security - Adding security enhancements by defining a Service Plugin Interface (SPI) architecture, a set of builtin implementations of the SPIs, and the security model enforced by the SPIs.
- Security-Enhanced Linux - A Linux kernel security module that provides a mechanism for supporting access control security policies, including mandatory access controls (MAC).
- OpenTitan - Will make the silicon Root of Trust design and implementation more transparent, trustworthy, and secure for enterprises, platform providers, and chip manufacturers. OpenTitan is administered by lowRISC CIC as a collaborative project to produce high quality, open IP for instantiation as a full-featured product.
- bandit - A tool designed to find common security issues in Python code.
- hardening - A quick way to make a Ubuntu server a bit more secure.
- Passbolt - Passbolt is a free and open source password manager that allows team members to store and share credentials securely.
- gopass - A password manager for the command line written in Go.
- pass - The standard unix password manager.
- Vault - A tool for securely accessing secrets. A secret is anything that you want to tightly control access to, such as API keys, passwords, certificates, and more.
- legion - An open source, easy-to-use, super-extensible and semi-automated network penetration testing framework that aids in discovery, reconnaissance and exploitation of information systems.
- openscap - The oscap program is a command line tool that allows users to load, scan, validate, edit, and export SCAP documents.
Datasets
- Papers With Code - Thousands of machine learning datasets provided by Papers With Code.
- KITTI-360 - This large-scale dataset contains 320k images and 100k laser scans in a driving distance of 73.7km.
- waymo_ros - This is a ROS package to connect Waymo open dataset to ROS.
- waymo-open-dataset - The Waymo Open Dataset is comprised of high-resolution sensor data collected by Waymo self-driving cars in a wide variety of conditions.
- Ford Autonomous Vehicle Dataset - Ford presents a challenging multi-agent seasonal dataset collected by a fleet of Ford autonomous vehicles at different days and times.
- awesome-robotics-datasets - A collection of useful datasets for robotics and computer vision.
- nuscenes-devkit - The devkit of the nuScenes dataset.
- dataset-api - This is a repo of toolkit for ApolloScape Dataset, CVPR 2019 Workshop on Autonomous Driving Challenge and ECCV 2018 challenge.
- utbm_robocar_dataset - EU Long-term Dataset with Multiple Sensors for Autonomous Driving.
- DBNet - A Large-Scale Dataset for Driving Behavior Learning.
- argoverse-api - Official GitHub repository for Argoverse dataset.
- DDAD - A new autonomous driving benchmark from TRI (Toyota Research Institute) for long range (up to 250m) and dense depth estimation in challenging and diverse urban conditions.
- pandaset-devkit - Public large-scale dataset for autonomous driving provided by Hesai & Scale.
- a2d2_to_ros - Utilities for converting A2D2 data sets to ROS bags.
- awesome-satellite-imagery-datasets - List of satellite image training datasets with annotations for computer vision and deep learning.
- sentinelsat - Search and download Copernicus Sentinel satellite images.
- adas-dataset-form - Thermal Dataset for Algorithm Training.
- h3d - The H3D is a large scale full-surround 3D multi-object detection and tracking dataset from Honda.
- Mapillary Vistas Dataset - A diverse street-level imagery dataset with pixel‑accurate and instance‑specific human annotations for understanding street scenes around the world.
- TensorFlow Datasets - TensorFlow Datasets provides many public datasets as tf.data.Datasets.
- racetrack-database - Contains center lines (x- and y-coordinates), track widths and race lines for over 20 race tracks (mainly F1 and DTM) all over the world.
- BlenderProc - A procedural Blender pipeline for photorealistic training image generation.
- Atlatec Sample Map Data - 3D map for autonomous driving and simulation created from nothing but two cameras and GPS in downtown San Francisco.
- Lyft Level 5 Dataset - Level 5 is developing a self-driving system for the Lyft network. We're collecting and processing data from our autonomous fleet and sharing it with you.
- holicity - A City-Scale Data Platform for Learning Holistic 3D Structures.
- UTD19 - Largest multi-city traffic dataset publically available.
- ASTYX HIRES2019 DATASET - Automotive Radar Dataset for Deep Learning Based 3D Object Detection.
- Objectron - A collection of short, object-centric video clips, which are accompanied by AR session metadata that includes camera poses, sparse point-clouds and characterization of the planar surfaces in the surrounding environment.
- ONCE dataset - A large-scale autonomous driving dataset with 2D&3D object annotations.
Notas de rodapé
Thanks to the team of xpp for creating this awesome GIF we use.