Javascript 如何从HTML5视频播放器帧访问原始像素数据?

Javascript 如何从HTML5视频播放器帧访问原始像素数据?,javascript,html,video,image-recognition,Javascript,Html,Video,Image Recognition,我在谷歌上做了一些搜索,但似乎找不到关于它是如何完成的结果。我想在图像识别的核心进行实验,而不是用一个库,我试图找出如何访问帧的原始像素数据 怎么做的?我想查看单个视频帧的像素网格数据结构,并在原始数据上运行公式,以明确我的要求。我对JavaScript很在行——我不想在这方面找什么大教程,我只是想学习如何从视频帧访问图像数据。例如,使用什么方法或存在什么属性来访问像素数据 你可以。然后从画布上使用。它返回一个具有属性的对象。它是一个Uint8ClampedArray,包含rgba序列中的像素数

我在谷歌上做了一些搜索,但似乎找不到关于它是如何完成的结果。我想在图像识别的核心进行实验,而不是用一个库,我试图找出如何访问帧的原始像素数据


怎么做的?我想查看单个视频帧的像素网格数据结构,并在原始数据上运行公式,以明确我的要求。我对JavaScript很在行——我不想在这方面找什么大教程,我只是想学习如何从视频帧访问图像数据。例如,使用什么方法或存在什么属性来访问像素数据

你可以。然后从画布上使用。它返回一个具有属性的对象。它是一个Uint8ClampedArray,包含rgba序列中的像素数据。

将视频帧绘制到html5画布中,然后使用getImageData从中获取像素

这里出现问题的主要原因是同源策略:只有当脚本和视频在同一主机上时,它才会起作用

本页提供了一些无库直接访问的示例:

谢谢,这正是我想要的。所以,我正计划测试视频版权侵权检测,根据YouTube上的相关结果对一些受欢迎的受版权保护的迪斯尼电影进行图像识别。我想这完全是不可能的?另外,我很好奇为什么同源政策会涵盖第三方视频渲染,这似乎不寻常。IANAL,但Youtube开发者TOS,第二节。禁令包括:通过除使用YouTube播放器或YouTube明确授权的其他视频播放器以外的任何方式访问任何YouTube视听内容的任何部分;