通过计算机显示器和智能手机摄像头进行数据传输

简介: 【10月更文挑战第7天】

3.2k star,最近超火一个开源神器

libcimbar: 高效的彩色图标矩阵条码实现

软件简介

libcimbar 是一个高效的彩色图标矩阵条码(Color Icon Matrix Barcode)实现,旨在通过计算机显示器和智能手机摄像头进行数据传输。

该项目由 sz3 开发,提供了一种无需互联网、蓝牙或 NFC 等传统通信方式的全新数据传输方法。

libcimbar 通过将数据编码为彩色图标矩阵条码,并利用摄像头进行解码,实现了高达 850 kbps(约 106 KB/s)的传输速度。

image.png

功能特点

  1. 高密度数据编码:libcimbar 使用彩色图标矩阵条码格式,将数据存储在彩色瓷砖网格中。每个瓷砖的位置和颜色编码了数据位,结合 Reed Solomon 纠错码,确保数据传输的可靠性。

  2. 高效数据压缩:libcimbar 采用了基于喷泉码(fountain codes)和 zstd 压缩的文件编码协议。压缩后的文件可以通过一系列 cimbar 码输出为图像或实时视频流。

  3. 跨平台支持:libcimbar 的代码主要用 C++ 编写,并在 amd64+linux、arm64+android(仅解码器)和 emscripten+WASM(仅编码器)上开发和测试。由于编码器可以编译为 asmjs 和 wasm,因此可以在任何现代 Web 浏览器上运行。

  4. 离线使用:用户可以将 cimbar.org 安装为渐进式 Web 应用(PWA),或下载最新版本的 cimbar_js.html 并在本地浏览器中打开。

  5. 简单依赖管理:libcimbar 依赖于 OpenCV 和 GLFW(包括 OpenGL ES 头文件),其他所有依赖项都包含在源代码树中。

如何快速开始

  1. 环境准备

    • 安装 OpenCV 和 GLFW:
      sudo apt-get install libopencv-dev libglfw3-dev libgles2-mesa-dev
      
      AI 代码解读
  2. 克隆仓库

    git clone https://github.com/sz3/libcimbar.git
    cd libcimbar
    
    AI 代码解读
  3. 构建项目

    • 使用 CMake 构建:
      mkdir build
      cd build
      cmake ..
      make
      
      AI 代码解读
  4. 运行编码器

    • 编码器可以将文件编码为 cimbar 码并输出为图像或视频流:
      ./cimbar_encoder input_file output_directory
      
      AI 代码解读
  5. 运行解码器

    • 解码器使用摄像头读取 cimbar 码并重建文件:
      ./cimbar_decoder output_directory
      
      AI 代码解读
  6. Web 版本

    • 访问 cimbar.org 使用 Web 编码器。
    • 下载 cimbar_js.html 并在本地浏览器中打开以离线使用。

结论

libcimbar 提供了一种创新的、无需传统通信方式的数据传输方法。其高效的编码和解码机制、跨平台支持以及简单的依赖管理,使其成为数据传输领域的一个有力工具。

无论是开发者还是普通用户,都可以通过简单的步骤快速上手,体验这一高效的数据传输方式。

希望这篇介绍能帮助您更直观地了解 libcimbar,并激发您对这一创新技术的兴趣!

libcimbar GitHub 仓库(https://github.com/sz3/libcimbar)

目录
打赏
0
0
0
0
93
分享
相关文章
OmAgent:轻松构建在终端设备上运行的 AI 应用,赋能手机、穿戴设备、摄像头等多种设备
OmAgent 是 Om AI 与浙江大学联合开源的多模态语言代理框架,支持多设备连接、高效模型集成,助力开发者快速构建复杂的多模态代理应用。
222 72
OmAgent:轻松构建在终端设备上运行的 AI 应用,赋能手机、穿戴设备、摄像头等多种设备
【资源共享】手机共享摄像头给电脑用
【资源共享】手机共享摄像头给电脑用
512 0
网络安全第8章课后题 计算机及手机病毒防范
网络安全第8章课后题 计算机及手机病毒防范
353 0
为什么你的手机后置摄像头越来越丑?ECCV2022这篇论文告诉你
为什么你的手机后置摄像头越来越丑?ECCV2022这篇论文告诉你
316 0
iMazing2023免费版苹果手机系统设备数据传输与备份工具
iMazing需要数据线将你的电脑和iPhone或者是iPad连接,这款软件是itunes的完美替代品,有用iPhone或iPad的朋们友推荐下载使用。只要在同一网络下,就可以轻松管理你的iPhone,可以说是非常的方便。平时在传输文件资料时,可以将iMazing充分利用起来,它可以对iQS设备进行强有力的管理。下载末尾安装包!
270 0
iMazing2023免费版苹果手机系统设备数据传输与备份工具
问题:安卓手机插入OTG摄像头时,如何禁用摄像头自带的MIC?
问题:安卓手机插入OTG摄像头时,如何禁用摄像头自带的MIC?
231 0
打印手机摄像头的支持参数+将预览帧转换为位图+获取最佳预览
打印手机摄像头的支持参数+将预览帧转换为位图
185 0
遇到个别手机前置摄像头相差90度的怪事
今天有人提供了一个手机,说怎么视频角度总是不对。吾以为应用版本没有更新。安装之后一试,还是错误,总是跟别的手机相差90度。
169 0

热门文章

最新文章

  • 1
    【03】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-测试hello word效果-虚拟华为手机真机环境调试-为DevEco Studio编译器安装中文插件-测试写一个滑动块效果-介绍诸如ohos.ui等依赖库-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
    22
  • 2
    【01】整体试验思路,如何在有UID的情况下获得用户手机号信息,python开发之理论研究试验,如何通过抖音视频下方的用户的UID获得抖音用户的手机号-本系列文章仅供学习研究-禁止用于任何商业用途-仅供学习交流-优雅草卓伊凡
    122
  • 3
    美团面试:手机扫描PC二维码登录,底层原理和完整流程是什么?
    67
  • 4
    MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
    1099
  • 5
    【06】flutter完成注册页面-密码登录-手机短信验证-找回密码相关页面-并且实现静态跳转打包demo做演示-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
    31
  • 6
    ClKLog支持手机端查询统计数据啦!
    40
  • 7
    OmAgent:轻松构建在终端设备上运行的 AI 应用,赋能手机、穿戴设备、摄像头等多种设备
    222
  • 8
    Mobile-Agent:通过视觉感知实现自动化手机操作,支持多应用跨平台
    297
  • 9
    HTML5实现的手机验证抽奖领券效果源码
    62
  • 10
    python实战——使用代理IP批量获取手机类电商数据
    67
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等