Wolfram 视频 | 应用示例

在代码中点击并按下
+
,即可编辑并运行任何代码。
视频分析、编辑与制作。运用极其强大灵活的视频函数来捕获、创建或处理视频文件,基于成熟的图像及音频技术,并与先进的可视化、自动化机器学习等功能深度集成。

导入、编辑和导出

导入视频文件:
Run
In[]:=
vid=Video["https://www.wolframcloud.com/obj/explore-wolfram/bird.mp4"]
对视频的每一帧应用效果:
Run
In[]:=
sepiavid=VideoMap[ImageEffect[#Image,"Sepia"]&,vid]
以您选择的格式导出结果:
Run
In[]:=
Export["sepiabird.mp4",sepiavid]

从图像创建视频

使用人脸检测识别图像中人脸的位置:
Run
In[]:=
img=
;
In[]:=
faces=FindFaces[img,PaddingSize->60];
通过从左到右排列人脸位置,并在首尾加入完整画面来创建关键帧序列:
Run
In[]:=
path=Join[{Full},SortBy[faces,First@*First],{Full}];
创建一个沿指定路径浏览图像的视频:
Run
In[]:=
TourVideo[img,path,DefaultDuration->12]

使用自定义效果编辑视频

从视频片段开始:
Run
In[]:=
aerialvid=
;
该效果将在片段的持续时间内从复古色调渐变到细节增强:
Run
In[]:=
sepiaToEnhanced=Blend[{ImageEffect[#Image,"Sepia"],ImageEffect[#Image,"DetailEnhancing"]},#Time/4]&;
将效果应用到视频:
Run
In[]:=
VideoMap[sepiaToEnhanced,aerialvid]

画质增强和色彩校正

此视频片段由于拍摄时间,色彩平衡不理想:
Run
In[]:=
trafficvid=
;
根据指定参考色温调整色彩平衡:
Run
VideoFrameMap[ColorBalance[#,
2500
K
]&,trafficvid]

人脸分析

此视频片段包含各种面部反应,似乎在讲述一个故事:
Run
In[]:=
reactvideo=
;
生成显示面部特征点的视频:
Run
In[]:=
VideoMap[​​HighlightImage[​​#Image,​​{PointSize[0.01],FacialFeatures[#Image,"Landmarks"]},​​ImageLabels->None​​]&,​​reactvideo]
根据检测到的情绪对各帧的时间戳进行分组:
Run
In[]:=
emotiondata=GroupBy[​​VideoMapList[{#Time,FacialFeatures[#Image,"Emotion"][[1]]}&,reactvideo],​​Last,Map[First]];
绘制分析结果来展现这个”故事”:
Run
In[]:=
NumberLinePlot[emotiondata,PlotLegends->Keys[emotiondata]]

物体检测与标注

从一个未标注的视频开始:
Run
In[]:=
video=
;
通过突出显示检测到的物体来标注视频帧:
Run
In[]:=
labledvideo=VideoFrameMap[​​HighlightImage[#,{Magenta,FaceForm[],ImageBoundingBoxes}]&,​​video]