精华内容
下载资源
问答
  • 3.1 封装成

    2021-02-19 10:51:14
    帧头和帧尾的作用之一就是帧定界。(并不是每一种数据链路层协议的帧都包含帧定界标志。) 有帧头和帧尾:发送方的数据链路层将上层交付下来的协议数据单元封装成帧后,还要通过物理层,将构成帧的各比特...

    1.封装成帧的概念 

    封装成帧指数据链路层给上层交付的协议数据单元添加帧头和帧尾,使之成为帧。

    • 帧头和帧尾中包含有重要的控制信息。
    • 帧头和帧尾的作用之一就是帧定界。(并不是每一种数据链路层协议的帧都包含帧定界标志。

    有帧头和帧尾:发送方的数据链路层将上层交付下来的协议数据单元封装成帧后,还要通过物理层,将构成帧的各比特转换成电信号发送到传输媒体。那么,接收方的数据链路层如何从物理层交付的比特流中提取出一个个的帧呢?==》添加帧头和帧尾。

    无帧头和帧尾:接收方如何从物理层交付的比特流中提取出一个个帧呢?==》从数据链路层封装到物理层的帧,物理层会在帧前面添加八字节的前导码,然后再将比特流转换成电信号发送。(前导码中的前7个字节为前同步码,作用是使接收方的时钟同步。之后的一字节为帧开始定界符,表明其后紧跟着的就是帧了。以太网还规定了帧间间隔时间为96比特,因此MAC帧并不需要帧结束定界符)

    2.透明传输

    透明传输是指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。

    面向字节的物理链路:使用字节填充(或称字符填充)的方法实现透明传输。

    (but数据链路层对上层交付的协议数据单元有限制,其内容不能包含帧定界符。==》实际上,各种数据链路层协议一定会想办法来解决这个问题。e.g.在发送帧之前对帧的数据部分进行扫描,没出现一个帧定界符,就在其前面插入一个转义字符。接收方数据链路层在物理层交付的比特流中提取帧,遇到第1个帧定界符时,认为这是帧的开始,当遇到转义字符时就知道其后面的一字节内容虽然与帧定界符相同,但它是数据而不是定界符,剔除转移字符后,将其后面的内容作为数据继续提取。当再次提取到定界符时,表明这是帧的结束。)《==遇到转义字符/定界符时在其前面添加转义字符

     

     面向比特的物理链路:使用比特填充的方法实现透明传输。

     e.g.为了简单起见,在帧首部和尾部中仅给出了帧定界标志,而未给出其他控制字段。而帧的数据部分出现了两个帧定界标志,但它们实际上是数据,而不是帧定界。==》在发送前,可以采用零比特填充法,对数据部分进行扫描,每5个连续的比特1后面就插入一个比特0。这样就确保了帧定界在整个帧中的唯一性,也就可以实现透明传输。接收方的数据链路层,从物理层交付的比特流中提取帧时,将帧的数据部分中的每5个连续的比特1后面的那个比特0踢除即可。

     

    【 注】:为了提高帧的传输效率,应当使帧的数据部分的长度尽可能大一些。(考虑到差错控制等多种因素,每一种数据链路层协议都规定了帧的数据部分的长度上限。)

    展开全文
  • 基于宽带移动通信中的帧同步设计,温彦杰,,传统上帧同步主要是通过相关法来实现。相关法仅仅考虑了帧头作用。而Massey认为,最优的帧同步算法不仅要考虑帧头作用,还要考
  • 面试题描述结构

    2019-08-17 09:25:08
    描述帧结构,要详细一些。...帧头:6+6+2=14字节 MTU值:1500字节 帧尾:4字节帧头 内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 0x0806:上层为ARP协议 0x代表16进制 ...

    描述帧结构,要详细一些。
    在这里插入图片描述 属于2层数据链路层的传输单元
    帧头:6+6+2=14字节
    MTU值:1500字节
    帧尾:4字节帧头
    内容:目标MAC、源MAC、类型
    类型的作用:识别上层协议
    0x0800:上层为IP协议
    0x0806:上层为ARP协议
    0x代表16进制

    展开全文
  • 前几天提取了一些视频中的人脸头像,交给同事去做识别分析,后来返回来说,其中的头像出现周期性的重复。由于在视频中进行人脸检测开始是设定隔...而修改定位的参数,比如直接改成定位到下一,却丝毫不起作用...

    前几天提取了一些视频中的人脸头像,交给同事去做识别分析,后来返回来说,其中的头像出现周期性的重复。
    由于在视频中进行人脸检测开始是设定隔几幀检测一次,所以循环中使用了 cvSetCaptureProperty() 进行了跳帧,尔后通过cvQueryFrame()获取相应的帧转换成图像,于是怀疑是这里的问题。取消跳帧的规则后,程序检测正常。而修改定位的参数,比如直接改成定位到下一帧,却丝毫不起作用。
    帧的重复非常有规律,我这边的测试数据是每隔5帧重复一次。于是就怀疑是否是定位出现了问题。google了一下,果然: opencv中cvSetCaptureProperty定位不准的原因及解决

     

     

    friedvan的专栏 写道
    经过差不多一晚上的探究,得出粗略的结论。原因在于opencv2.0以后,采用ffmpeg采集视频,而在opencv1.0采用vfw采集视频(具体的概念暂时还不清楚,有时间继续补上)。而opencv在定位时候,调用的ffmpeg的av_seek_frame()函数,此函数原型为:
    int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp, int flags);
    其中,最后一个参数有
    AVSEEK_FLAG_BACKWARD = 1; ///< seek backward
    AVSEEK_FLAG_BYTE = 2; ///< seeking based on position in bytes
    AVSEEK_FLAG_ANY = 4; ///< seek to any frame, even non key-frames
    ffmpeg默认的是选取关键帧(这个概念需要具体定义)。opencv里面这个函数的参数flag是0,
    int ret = av_seek_frame(ic, video_stream, timestamp, 0);
    也就是按照默认的读取关键帧。因此,视频跳跃就出现了。
    解决这个问题需要将0改为 AVSEEK_FLAG_ANY ,即:
    int ret = av_seek_frame(ic, video_stream, timestamp, AVSEEK_FLAG_ANY );
    之后重新编译opencv库,就可以了。

     但看了friedvan上面文章的回复,发现有人反映说是重新编译后读取视频出现花屏。因为一时也腾不出手来重新编译了测试,只好先通过另外的方式解决:即在读取的循环中加入判断,如果是需要处理的帧进行处理的逻辑,否则continue

     

    VideoCapture cap;
    cap.open("test.avi");
    namedWindow("video",1);
    int frameNum=0;
    int readRatio=3;//读取的周期
    for(;;){
     if(frameNum%readRatio!=0) continue;
     Mat frame;
     cap<<frame;
     
     //Do something
    
     frameNum++;
    }
    
     

     

     

     

     

     

    展开全文
  • 硬件当中,镜头质量好坏起着关键作用。   机器视觉大师提供实时图像的清晰度评估功能,通过清晰度曲线,可以看到当前视场图像 清晰度的变化和实际值。这个功能主要通过调用RVB里面清晰度函数实现。很不幸的是...

    机器视觉应用或各种视频应用中,必须首先保证视场图像的清晰度。高质量的图像是机器视觉,

    视频分析等应用成功的首要条件。高质量的图像由光源,镜头,相机等硬件综合决定,在诸多

    硬件当中,镜头质量好坏起着关键作用。

     

    机器视觉大师提供实时图像帧的清晰度评估功能,通过清晰度曲线,可以看到当前视场图像

    清晰度的变化和实际值。这个功能主要通过调用RVB里面清晰度函数实现。很不幸的是,

    在大部分应用场所,工程师只需要人眼手动或通过某种方式进行焦距调节,直接主观判断

    当前图像是否清晰就完事,往往不需要很精准的清晰度数据。图像清晰度应用范围受到很大

    限制。

     

    图像清晰度评估有各种算法,有些算法非常复杂,这些算法的细节暂时留给科学家去探索,

    分析,总结。作为工程人员,笔者将介绍如何使用机器视觉大师的清晰度功能进行不同镜

    头的清晰度比较,从而判断不同镜头的质量好坏,解决实际的工程问题。

     

    为了节省篇幅,笔者对机器视觉大师的一些基本操作不再介绍,直接进入相关的操作环节。

     

    准备工作

    连接500万像素的USB摄像头,准备若干同一型号规格的CCTV镜头,准备一块调焦用的

    图案菲林,放在带有背光的工作台,运行机器视觉大师,在”显示”菜单选择“显示清晰度曲线”,

    然后启动监视运行。如下图:

    清晰度评估使用的图案如下:

    评估清晰度

    换上其中的一个镜头到工作相机(摄像头)上,调整镜头焦距到最佳状态。等待一会,可以看到

    当前的清晰度曲线慢慢变成一条近似直线,表示视场图像已经达到稳定状态。如下图:

    在主窗口底部的状态栏,可以看到当前的清晰度实际值,如下:

    记录保存该数据。保持场景不变,继续更换其它镜头,获得其它镜头的清晰度数据。

     

    记录结果如下表:

    镜头编号

    清晰度

    1

    0.355

    2

    0.287

    3

    0.206

    4

    0.298

    5

    0.295

    数值愈大,表示图像的清晰度越好,镜头也越清晰。

    结束语

    在实际测试中,镜头清晰度会根据视场中图案的不同而发生变化,因此考察镜头的清晰度

    差异,首先要保证视场的图像,光照,成像方式保持不变,这样才有意义。工业应用领域

    中,摄像头模组镜头的自动对焦设备也是应用类似的原理。

     


    最新版多多摄像头大师(机器视觉大师)下载地址:http://www.hdy.net.cn/softshare/ddcam.htm

    技术交流QQ群: 295860595  该群文件空间即时更新多多摄像头大师最新版本,下载速度更快


     

    展开全文
  • 作用: ■数据链路的建立、维护与拆除 ■包装、传输、同步 ■的差错恢复 ■流量控制 以太网:工作在数据链路层 注:IEEE:电气和电子工程师协会 单播和组播的区别:相当于私聊与群聊的关系,一对一和一对多 ...
  • 工业4.0时代,简单说就是物联网、无处不在的连接、机器学习等技术融合的结果,通过通讯技术、虚拟网络和实体物理网络相结合,实现制造业的智能化转变,而机器视觉在推动智能化的过程也起到了重要的作用。机器视觉...
  • next()函数是FlashPlayer提供的API。 功能是将播放先前推进一。 swf文件是按照来存放信息。...我们假设swf文件有3:第一存放函数A,第...当FlashPlayer的播放在第二的时候,FlashPlayer只能访问第一
  • XML文件在TwinCAT里面的作用

    千次阅读 2015-09-17 20:35:20
    想要了解XML文件在TwinCAT里面的地位,应该从源头出发。 EtherCAT从站内存区前4KB为配置寄存器,从站系统运行前要进行寄存器初始化, 其初始化命令帧即由在主站... 主站信息(帧头定义)  广播寻址信息(初始化命令)
  • switchport trunk native 的原理与作用

    万次阅读 2014-11-02 14:04:02
     Native VLAN是TRUNK上才有的概念.主要的目的是不丢弃非标记....各个VLAN都被加上一个,并在该头部说明VLAN号码,但是有一个VLAN,不加,不进行封装。就是native vlan。交换机在发送数据时候会使用vla
  • 帧头:由目标MAC地址(6字节),源MAC地址(6字节),类型(2字节)共由14个字节组成,放在数据帧的最前头。 帧头中的类型:是为了识别上层的协议:如0x0800IP协议,0x0806ARP协议 帧尾:FCS值放在数据帧的最后头,...
  • 数据链路层——概述

    2017-11-01 17:45:27
    数据链路层 链路是一条点对点的物理线路,中间没有任何其他交换站点。一条链路只是一条通路的一个组成部分。 ...数据链路层给数据报加上帧头、帧尾、物理层地址和检验值。 1. 作用屏蔽掉底层(物
  • 3.帧结构:帧头:上三层数据:帧尾 4.帧格式: 802.3 有线 802.11 无线 (由IEEE 802 发明) 5.帧头:目标MAC:源MAC:类型 类型字段作用:识别上层协议类型,为上层提供服务 类型:0x0800 解析完帧后发送给IP协议 ...
  • 帧头中的类型作用:识别上层协议,为上层提供服务。 mac地址:也叫物理地址,全求唯一!长度:48位,6字节 帧头: 6+6+2 = 12字节 MTU值:1500字节 帧尾: 4字节 二、交换机工作原理 工作在数据链路层的设备:...
  • 帧头中的类型作用:识别上层协议,为上层提供服务。 mac地址:也叫物理地址,全求唯一!长度:48位,6字节 帧头: 6+6+2 = 12字节 MTU值:1500字节 帧尾: 4字节 二、交换机工作原理 工作在数据链路层的设备:交换机...
  • 3.帧结构:帧头和帧尾中间的结构对于帧来说就叫做上三层数据 帧格式在你使用有线、无线网卡是不一样的,帧格式会发生改变 帧格式: 802.3:有线网卡 802.11:无线网卡 帧头结构:目的MAC,源MAC,类型 类型: 0x0800...
  • 数据链路层 数据链路层基本概念 1.数据链路层(data link layer)第2层。... | 帧头 | 上三层数据 | 帧尾 | 帧头内容:目标MAC,源MAC ,类型 类型字段的作用:识别上层协议,为上层提供服务,类型内容: ...
  • 帧头:6+6+2=14字节 MTU值:1500字节 帧尾:4字节 帧头内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 0x0806:上层为ARP协议 0x代表16进制 **4.工作在...
  • 六、数据链路层

    2020-10-13 20:46:45
    帧头:目标MAC(6字节)、源MAC(6字节) 、 类型(2字节) MAC地址:也叫物理地址,全球唯一,长度:48位,6字节 类型字段的作用:识别上层协议,为上层提供服务 0x0800 :上层为IP协议 0x0806 :上层...
  • 通信协议中的转义符

    2017-06-21 20:23:00
    通信协议中的转义符 ...那么如果帧头(通信的開始)为0x02(也能够是其它),帧尾为0x03(也能够是其它),粗略的一看是没有问题的,可是试想如果在帧头和帧尾的中间数据出现0x02或者0x03的时候整个通...
  • 帧格式:帧头(目标MAC[6个字节] 源MAC[6个字节] 类型[2个字节]) 上三层数据 帧尾 ​ 类型字段的作用:识别上层协议,为上层协议提供服务 ​ 帧头:14个字节;帧尾:4个字节 ​ MTU值(最大传输单元)...
  • 数据链路层

    2021-02-02 10:04:05
    帧头:6+6+2=14字节 MTU值:1500字节 帧尾:4字节 帧头内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 0x0806:上层为ARP协议 0x代表16进制 4.工作在数据链路层的设备:交换机/网卡 .....
  • 帧头:6+6+2=14字节 MTU值:1500字节(国内) 帧尾:4字节 帧头内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 0x0806:上层为ARP协议 0x代表16进制 4.工作在数据链路层的...
  • 目录 1 数据链路层(2层 Data Link Layer) 2 交换机工作原理: 3 交换机5大基本工作模式及命令 命令: ... 帧头内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 ...
  • 上一篇博客:OSI与TCP/IP协议簇初步 目录 物理层 网线 数据链路层 数据链路层 交换机工作原理 ...帧头:6+6+2=14字节 ...帧头内容:目标MAC、源MAC、类型 类型的作用:识别上层协议 0x0800:上层为IP协议 0
  • 帧:帧头,帧尾,物理地址,校验值 封装成帧 在数据报前后加上首部和尾部 首部和尾部作用:确定帧的界限 最大传送单元MTU:数据部分长度上线 帧定界使用不可打印的控制字符,数据由可打印ASCII码组成 ...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 147
精华内容 58
关键字:

帧头作用