0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从视频中获取帧图片

QQ475400555 来源:机器视觉沙龙 2023-03-30 10:55 次阅读

视频中获取帧图片

网络传输数据帧

数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。帧通过特定的称为网络驱动程序的软件进行成型,然后通过网卡发送到网线上,通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。就是在这个传输和接收的过程中,嗅探器会带来安全方面的问题 。

“帧”数据由两部分组成:帧头和帧数据。帧头包括接收方主机物理地址的定位以及其它网络信息。帧数据区含有一个数据体。为确保计算机能够解释数据帧中的数据,这两台计算机使用一种公用的通讯协议。互联网使用的通讯协议简称IP,即互联网协议。IP数据体由两部分组成:数据体头部和数据体的数据区。数据体头部包括IP源地址和IP目标地址,以及其它信息。数据体的数据区包括用户数据协议(UDP),传输控制协议(TCP),还有数据包的其他信息。这些数据包都含有附加的进程信息以及实际数据。

视频图像帧

帧——就是影像动画中最小单位的单幅影像画面。一帧就是一副静止的画面,连续的帧就形成动画,如电视图象等。通常说帧数,简单地说,就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用FPS(Frames Per Second)表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数 (fps) 越多,所显示的动作就会越流畅。

关键帧

——任何动画要表现运动或变化,至少前后要给出两个不同的关键状态,而中间状态的变化和衔接电脑可以自动完成,在Flash中,表示关键状态的帧叫做关键帧。

过渡帧

——在两个关键帧之间,电脑自动完成过渡画面的帧叫做过渡帧。

以下例出从视频中获取帧图片

void video2Image()

{

//VideoCapture cap("1.avi");

VideoCapture cap("G:\CBU2_MiddleFrameDetection\imageData\拍摄视频\10.21\直角边\1.avi");

// 获取视频总帧数

long totalFrameNumber = cap.get(CAP_PROP_FRAME_COUNT);

cout << "total frames: " << totalFrameNumber << endl;

Mat frame;

bool flags = true;

long currentFrame = 0;

while (flags) {

// 读取视频每一帧

cap.read(frame);

stringstream str;

str << "a2" << currentFrame << ".jpg";

cout << "正在处理第" << currentFrame << "帧" << endl;

printf(" ");

// 设置每30帧获取一次帧

if (currentFrame % 2 == 0)

{

// 将帧转成图片输出

imwrite("G:\CBU2_MiddleFrameDetection\imageData\拍摄视频\img10.21\2" + str.str(), frame);

}

// 结束条件

if (currentFrame >= totalFrameNumber) {

flags = false;

}

currentFrame++;

}

}

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18304

    浏览量

    222336
  • 网络传输
    +关注

    关注

    0

    文章

    130

    浏览量

    17207
  • 通讯协议
    +关注

    关注

    9

    文章

    249

    浏览量

    20177

原文标题:从视频中获取帧图片

文章出处:【微信号:机器视觉沙龙,微信公众号:机器视觉沙龙】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    labview 咋样按读取MP4格式的视频文件?

    最近在做视频读取的项目,labview自带的只有avi格式的视频读取模块,现在想把MP4格式的视频
    发表于 12-21 11:09

    LABVIE 想控制速度播放一个视频视频挑取一处理!....

    各位大神遇到一个问题我现在想用LV做播放视频的东西功能是播放视频文件,调节播放速度,挑取某一图像进行处理,保存(不一定非要保存到原视频
    发表于 03-05 19:34

    视频相邻相减,怎么解决图片缓存问题

    如题,用摄像头实时采集视频,想让相邻相减,或者隔几相减,怎么解决图片缓存问题?附上视频图像累减程序。万望高手答疑解惑,不胜感激!
    发表于 04-21 11:24

    labview怎么按读取MP4的视频

    labview怎么按读取MP4的视频@wwluoqing
    发表于 06-28 15:44

    【AC620 FPGA试用体验】关于图像采集系统显示图像时同步的理解

    存储一图片数据,假设摄像头获取图片大小为640*480,用于显示的VGA像素同样为640*480,这样图片数据量方面不用做处理,存入的摄
    发表于 08-01 21:31

    可以的数量到fpga的列和行位置吗?

    5024位。现在我的问题可以的数量到fpga的列和行位置?提前致谢。最好的祝福托比亚斯马库斯以上来自于谷歌翻译以下为原文Hello, I have a Readback Bitfile of a
    发表于 07-08 12:19

    如何stm32获取图片的像素?

    以下是LCD显示所指向的地址,#define FSMC_LCD_ADDRESS 0x64000002当摄像头获取图片之后,通过DMA将数据传输至此
    发表于 09-03 04:35

    为什么gif图片只能单循环显示?

    (_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0)),仿真后界面里面的gif图片只能单显示,不是完整的gif图片;如果单独显示gif图片,调用
    发表于 09-16 03:39

    请问F429能刷几图片

    想咨询下,F429可以刷几PNG的图片图片大小200*200
    发表于 03-26 04:37

    ClearAi人工智能如何把模糊图片变清晰和模糊视频变清晰(自动补

    秒变高清的工具软件ClearAi-图片+视频清晰优化工具安卓版、PC版、苹果版面面俱全。 该工具涵盖模糊视频清晰化(超清、超分辨、补)、人脸清晰化、模糊图像清晰化、图像超分辨、人像风
    发表于 08-07 22:34

    请问ArkUI如何获取mp4文件的第一图片

    请问大佬知道在ArkUI如何获取mp4文件的第一图片吗?
    发表于 03-21 09:25

    labview怎么将将视频格式分解为单图片

    我可以用LAVIEW实现AVI视频的生成和存储,然后也知晓自己的相机帧率为30每秒,想把生成的视频分解成一的照片?求指点
    发表于 10-13 20:48

    如何OV7670获取一些静止图像?

    大家好, 我已经在这个项目上工作了几个星期,并决定发布我的进展,因为显然这是一个热门话题。 让我首先警告您以下几点: - 似乎没有办法 OV7670 获取真实视频,因为 ESP82
    发表于 05-22 09:50

    opencv下如何获取视频的timestamp?

    opencv 下如何获取视频的 timestamp
    发表于 09-19 07:02

    摄像头是如何获取彩色图片的?

    摄像头是如何获取彩色图片的?先和大家说下CMOS图像传感器的工作原理。下图是一个CMOS传感器典型电路,4T-APS电路图。
    的头像 发表于 02-01 17:30 2823次阅读