{"id":14573019,"url":"https://github.com/BICLab/SpikeYOLO","last_synced_at":"2025-09-04T10:31:54.930Z","repository":{"id":247874589,"uuid":"827087200","full_name":"BICLab/SpikeYOLO","owner":"BICLab","description":"Offical implementation of \"Integer-Valued Training and Spike-Driven Inference Spiking Neural Network for High-performance and Energy-efficient Object Detection\" (ECCV2024 Oral)","archived":false,"fork":false,"pushed_at":"2024-08-29T10:08:40.000Z","size":1757,"stargazers_count":45,"open_issues_count":2,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-08-29T11:27:41.722Z","etag":null,"topics":["neuromorphic-computing","spiking-neural-networks"],"latest_commit_sha":null,"homepage":"https://arxiv.org/abs/2407.20708","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BICLab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-11T02:13:53.000Z","updated_at":"2024-08-29T10:08:43.000Z","dependencies_parsed_at":"2024-07-11T04:03:54.368Z","dependency_job_id":"d0bbb2f8-2358-41e4-a892-bd215a3a2711","html_url":"https://github.com/BICLab/SpikeYOLO","commit_stats":null,"previous_names":["biclab/spikeyolo"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BICLab%2FSpikeYOLO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BICLab%2FSpikeYOLO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BICLab%2FSpikeYOLO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BICLab%2FSpikeYOLO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BICLab","download_url":"https://codeload.github.com/BICLab/SpikeYOLO/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":217962451,"owners_count":16257633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["neuromorphic-computing","spiking-neural-networks"],"created_at":"2024-09-07T09:01:23.009Z","updated_at":"2025-09-04T10:31:54.910Z","avatar_url":"https://github.com/BICLab.png","language":null,"funding_links":[],"categories":["Object Detection Applications","Applications"],"sub_categories":[],"readme":"# Integer-Valued Training and Spike-Driven Inference Spiking Neural Network for High-performance and Energy-efficient Object Detection (ECCV2024 Best Paper Candidate)\n\n[Xinhao Luo](), [Man Yao](https://scholar.google.com/citations?user=eE4vvp0AAAAJ), [Yuhong Chou](https://scholar.google.com.hk/citations?hl=zh-CN\u0026user=8CpWM4cAAAAJ), [Bo Xu]() and [Guoqi Li](https://scholar.google.com/citations?user=qCfE--MAAAAJ\u0026)\n\nBICLab, Institute of Automation, Chinese Academy of Sciences\n\n---\n\n:rocket:  :rocket:  :rocket: **News**:\n\n- **July. 1, 2024**: Accepted by ECCV2024.\n- **September. 28, 2024**: Upload code.\n- **October. 1, 2024**: Best Paper Candidate obtained.\n- **October. 21, 2024**: Upload checkpoints.\n\ncheckpoint(23M, T=1, D=4):https://drive.google.com/drive/folders/1c5p09ZRCFeK1M5wH6zQduJltZalMzQkZ?usp=sharing\n\ncheckpoint(69M, T=1, D=4):https://drive.google.com/file/d/1rmcUMJztbjFFbbVqW8xwgshKNZel1psZ/view?usp=drive_link\n\ncheckpoint(23M, T=2, D=4，GEN1，based on Spikingjelly):\nhttps://drive.google.com/file/d/1PnrsYWSOrCjvfRpYng_hsTcv35pGsrHb/view?usp=drive_link\n\n\n\nReplacing yolo_spikformer.py with yolo_spikformer_bin.py enables binary inference. However, in order to facilitate deployment, we have also made a series of optimizations to the model, including removing heavy parametric convolutions. Therefore, it is not possible to load the previous weights directly. Therefore, we publish the following weighted model specifically for binary inference:\n\nbinary inference checkpoint(23M, T=1, D=4):https://drive.google.com/file/d/1YQ29eDUfmaze2jl_UREX4Zeb1u8tpHfl/view?usp=sharing\n\n## Abstract\n\nBrain-inspired Spiking Neural Networks (SNNs) have bio-plausibility and low-power advantages over Artificial Neural Networks (ANNs). Applications of SNNs are currently limited to simple classification tasks because of their poor performance. In this work, we focus on bridging the performance gap between ANNs and SNNs on object detection. Our design revolves around network architecture and spiking neuron, include:(1)**SpikeYOLO**, We explore suitable architectures in SNNs for handling object detection tasks and propose SpikeYOLO, which simplifies YOLOv8 and incorporates meta SNN blocks. This inspires us that the complex modules in ANN may not be suitable for SNN architecture design. (2)**I-LIF Spiking Neuron**, We propose an I-LIF spiking neuron that combines integer-valued training with spike-driven inference. The former is used to reduce quantization errors in spiking neurons, and the latter is the basis of the low-power nature of SNNs. The proposed method achieves outstanding accuracy with low power consumption on object detection datasets, demonstrating the potential of SNNs in complex vision tasks. On the COCO dataset, we obtain **66.2%** mAP@50 and **48.9%** mAP@50:95, which is **+15.0%** and **+18.7%** higher than the prior state-of-the-art SNN, respectively. On the Gen1 dataset, SpikeYOLO is **+2.5%** better than ANN models with **5.7×** energy efficiency.\n\n![image](picture/figure1.jpg)\n\n\n\nFor help or issues using this git, please submit a GitHub issue.\n\nFor other communications related to this git, please contact `luoxinhao2023@ia.ac.cn` and `man.yao@ia.ac.cn`.\n\n## train\npython train.py\n\n## test / get_firing_rate\npython test.py\n\n## notes\nSince the Gen1 dataset involves different ways of data preprocessing, we implemented it in the folder \"SpikeYOLO_for_Gen1\".\n\n## Thanks\n\nOur implementation is mainly based on the following codebases. We gratefully thank the authors for their wonderful works.\n\nhttps://github.com/ultralytics/ultralytics\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBICLab%2FSpikeYOLO","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBICLab%2FSpikeYOLO","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBICLab%2FSpikeYOLO/lists"}