V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
fbxshit
V2EX  ›  问与答

从台式机显示器往手机摄像头传数据可以达到多少速度?

  •  
  •   fbxshit · 2020-12-20 21:28:53 +08:00 · 1665 次点击
    这是一个创建于 1417 天前的主题,其中的信息可能已经有所发展或是发生改变。
    显示器是 DELL22 寸 1080P 60hz 的,手机摄像头像素是 1200 万( iphone11 )。想要做一个传文件的工具,在台式机显示器上显示高速变换的二维码,手机摄像头放支架上对着显示器拍视频,同时把视频再转换成传送的文件。

    请问这样的传输通道传文件可以达到什么速度?
    20 条回复    2020-12-21 13:23:54 +08:00
    qq292382270
        1
    qq292382270  
       2020-12-20 21:49:58 +08:00
    读了题目+内容大约五遍没读懂,是我阅读理解能力不扎实吗?
    视频传输速度能跑到宽带上行极限吧. 话说这个跟什么显示器没什么关联吧... 云里雾里的,求楼下大佬打醒我
    tetora
        2
    tetora  
       2020-12-20 21:53:03 +08:00 via Android
    @qq292382270 他想靠扫二维码传输数据,我想应该取决于摄像头和扫码软件的解码速度
    whwq2012
        3
    whwq2012  
       2020-12-20 21:55:45 +08:00 via iPad
    你要偷物理隔离内网电脑的数据?
    also24
        4
    also24  
       2020-12-20 22:02:02 +08:00
    先按黑白状态计算:
    1080P 60Hz 的意思是,1920*1080 个像素,每秒刷新 60 幅,那么相应的也就是 1920*1080*60 = 124416000 bit 的信息容量,换算一下,大约就是 118.65MB/s 的带宽。

    但是,现在的显示器,基本都已经是 8bit 了,那么理论上单个像素点是可以携带 8bit 信息的,也就是还需要 *8,也就是大约 949MB/s 的带宽。

    但是这里需要注意:
    1 、此处完全利用了全部的分辨率,也就意味着,不能使用现有的 qrcode 等编码方式,需要自己单独处理编码解码。
    2 、此处完全没有考虑容错纠错问题,如果需要加入相应机制,需要相应机制的话,自行损耗相应比例的带宽。
    3 、考虑到每台显示器的色域存在差别,可能需要有一个类似 『颜色对齐』的预先操作。
    4 、iPhone11 支持 4K 60Hz,理论上应该恰好能匹配到显示器的性能(像素不容易对齐,所以用 4:1 )。
    also24
        5
    also24  
       2020-12-20 22:11:44 +08:00   ❤️ 1
    上面的是极限版本的,接下来是没那么极限的方案。

    如果想要实际运用,那肯定用最常见的 QR code 比较实际,比较惨的是,现在最大的 QR code 只有 177*177,我们选择最低纠错级别 L,可用的数据容量为 2953 字节。
    https://www.qrcode.com/zh/about/version.html

    也就是说,每一帧只能传送 2953 字节的内容,另一方面来说,虽然屏幕为 60Hz,但是为稳妥考虑,我们以 30Hz 的速率展示内容,也就是每秒钟能够传送 2953 * 30 = 88590 字节的数据,也就是等效带宽大约为 86.5KB/s 左右。
    01802
        6
    01802  
       2020-12-20 22:14:30 +08:00 via Android
    难道不是显示压缩后编码的字符拍下来更合适
    also24
        7
    also24  
       2020-12-20 22:18:58 +08:00
    关于极限版本的修正:

    前面只考虑了 8bit,忘了考虑还有 RGB 了,加上 RGB 之后,单个像素点,实际上可以携带的信息是 8^3 bit 才对,也就是说一秒钟的的信息容量是 8^3 * 1920*1080*60 = 63700992000 bit,换算一下就是 59.3 GB/s 左右的带宽。
    also24
        8
    also24  
       2020-12-20 22:21:16 +08:00
    @also24 #7
    修正…… 是 59.3 Gb/s,也就是 7.41 GB/s
    qq292382270
        9
    qq292382270  
       2020-12-20 22:21:39 +08:00
    @tetora 看了下楼上的大神回复, 没错了是我的问题 . 太深奥了这
    lxilu
        10
    lxilu  
       2020-12-20 22:22:16 +08:00 via iPhone   ❤️ 1
    also24
        11
    also24  
       2020-12-20 22:30:38 +08:00   ❤️ 1
    terence4444
        12
    terence4444  
       2020-12-20 22:34:22 +08:00 via iPhone
    这个想法其实挺 NB 的,iOS 不用开 Wi-Fi 传文件了。
    wpblank
        13
    wpblank  
       2020-12-20 22:37:29 +08:00 via iPhone
    大概看懂你的想法了 还挺有意思的 哈哈哈哈。
    SuperManNoPain
        14
    SuperManNoPain  
       2020-12-20 22:55:31 +08:00
    有幸我们项目组还真用到这种技术 ,
    westoy
        15
    westoy  
       2020-12-20 23:18:07 +08:00
    问题是

    主流的是滚动快门, 不是全局快门啊

    一帧拍到的数据并不一定全是这一帧展示的数据
    Xusually
        16
    Xusually  
       2020-12-20 23:22:51 +08:00
    功能机时代的红外线互传文件的可见光版本。。。。
    systemcall
        17
    systemcall  
       2020-12-21 01:07:56 +08:00 via Android   ❤️ 2
    提一下屏摄这个过程中的问题
    第一个就是摩尔纹,摩尔纹会导致很难识别到每个像素
    就算你把手机架起来,由于镜头素质的问题,会有桶形畸变和枕形畸变,没法精确到每个像素点
    慧差的存在,导致精确的捕获到每个像素点的颜色也有很多问题。摄像头的 CMOS 是拜耳阵列,一些高分辨率的型号是四拜耳甚至九拜耳,实际上对于单个的像素,颜色是从临近的像素推测的
    一般的手机可以完成 1080p30fps 的视频拍摄,好点的可以 4k30,少部分可以 4k60 。格式一般是 yuv420 8bit,颜色信息也会少很多。拍照一般是另外的模式,帧数一般没多高,当然也有可以达到很高的,不过可能又会有 DRAM 堆栈的问题
    最后的结果,应该是亮度信息比色彩信息多、分辨率比屏幕的分辨率低、误码率比较高。二维码只利用到了一位的亮度,不是很好的方法,而且如果发生了帧撕裂二维码会坏掉
    感觉亮度起码可以做到 4 位。校准倒不是什么问题,要严格校准的基本上可以放弃因为手机这边会有各种补偿和修正
    fengmumu
        18
    fengmumu  
       2020-12-21 10:48:58 +08:00
    @qq292382270 就是把视频拆分成一个一个的数据包,然后数据包转成二维码,然后手机扫码,然后解析,然后解析数据存储
    systemcall
        19
    systemcall  
       2020-12-21 12:42:44 +08:00
    @Xusually 红外线的频率没那么低
    不过倒是可以用键盘的灯来发送数据,之后用手机的光线传感器来接收,频率应该上的去
    键盘的灯有很多种方式可以操作,键盘再怎么说一般还是有个可以自己控制的 Caps Lock 灯的,手机也都会有光线传感器
    不知道能不能把 IrDA 改一下,来传输数据。也要不了什么权限。如果传输的时候不输入的话,就算用 Caps Lock 的灯都可以。要输入的时候就用 Scrool Lock,都挺隐蔽的
    vynkicc
        20
    vynkicc  
       2020-12-21 13:23:54 +08:00
    蛋疼的想法 不过有点意思哈哈
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3317 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:39 · PVG 08:39 · LAX 16:39 · JFK 19:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.