在「非法」查看色情视频时,你是否也为其「漫长」的铺垫和前奏感到懊恼呢?前几天,GitHub 用户 ryanjay0 开源了一个可以用来识别色情视频中特定类型的场景的人工智能项目 Miles Deep。该算法可以将你想看的类型的片段从完整视频中截取出来并生成一个集合了这些片段的新视频,让你可以不再为那些多余的片段烦恼。 Miles Deep 使用了一个带有残差连接(residual connections)的深度卷积神经网络(DCNN),可以基于性行为(sexual act)将一段色情视频的每一秒分类成 6 种类别,其准确度高达 95%。然后它可以使用这种分类来自动编辑该视频。它可以移除所有不包含性接触的场景,j2直播,或者编辑去掉一种特定的性行为。 Miles Deep 和雅虎最近发布的 NSFW 模型(见机器之心报道《》)使用了类似的架构,但不一样的是 Miles Deep 还能够区分裸体和多种特定的性行为之间的不同。就我所知,这是第一个公开的色情视频分类或编辑工具。 这个程序可以说是使用 Caffe 模型进行视频分类的一种通用框架,其使用了 C++ 的 batching 和 threading。通过替换权重、模型定义和 mean file,它可以立即被用于编辑其它类型的视频,而不需要重新编译。下面会介绍一个例子。 Miles Deep 项目地址:https://github.com/ryanjay0/miles-deep 雅虎 NSFW 模型地址:https://github.com/yahoo/open_nsfw 安装 Ubuntu 安装(16.04) 依赖包(Dependencies) sudo apt install ffmpeg libopenblas-base libhdf5-serial-dev libgoogle-glog-dev 额外的 14.04 依赖包 sudo apt install libgflags-dev CUDA(推荐) 如果要使用 GPU,你需要 Nvidia GPU 和 CUDA 8.0 驱动。强烈推荐;可提速 10 倍以上。这可以通过软件包安装或直接从 NVIDIA 下载:https://developer.nvidia.com/cuda-downloads CUDNN(可选) 这是来自 NVIDIA 的额外的驱动,可以让 CUDA GPU 支持更快。在这里下载(需要注册):https://developer.nvidia.com/cudnn 下载 Miles Deep miles-deep (GPU + CuDNN) miles-deep (GPU) miles-deep (CPU) 也要下载这个模型。将 miles-deep 与该模型的文件夹放在同一个位置(而不是在模型文件里面)。 注:是在一个 GTX 960 4GB 上测试了一段 24.5 分钟长的视频 Windows 和 OSX 我目前还在开发用于 Windows 的版本。但我没有 Mac,不过应该只需要做一些小修改就可以在 OSX 上运行。编译指令如下。https://github.com/ryanjay0/miles-deep#compiling 使用方法 例子: miles-deep -t sex_back,sex_front movie.mp4 这能找到后向和前向的性爱(sex from the back or front)场景,并输出结果到 movie.cut.avi 例子: miles-deep -x movie.avi 这能编辑去除 movie.avi 中所有的非性爱场景,并将结果输出到 movie.cut.avi。 例子: miles-deep -b 16 -t cunnilingus -o /cut_movies movie.mkv 这能将批大小(batch size)减小到 16(默认为 32)。筛选出舔阴(cunnilingus)的场景,结果输出到 /cut_movies/movie.cut.mkv 注:如果你的内存不够,可以减小批大小 在多种批大小情况下的 GPU VRAM 用量和运行时间:
该结果是在带有 4GB VRAM 的 Nvidia GTX 960 上测试得到的,样本是一段 24.5 分钟的视频文件。当 batch_size = 32 时,处理 1 分钟的输入视频大约需要 0.6 秒,也就是说每小时大约 36 秒。 除了 batching 之外,Miles Deep 还使用了 threading,这让其可以在分类的过程中截取和处理截图(screenshot)。 预测权重 这里是一个预测一段视频中每一秒的例子:
通过你自己的 Caffe 模型使用 Miles Deep 找猫 下面这个例子是如果通过你自己的模型(或一个预训练的模型)使用这个程序: MODEL_PATH=/models/bvlc_reference_caffenet/ miles-deep -t n02123045 \ -p caffe/${MODEL_PATH}/deploy.prototxt \ -m caffe/data/ilsvrc12/imagenet_mean.binaryproto \ -w caffe/${MODEL_PATH/bvlc_reference_caffenet.caffemodel \ -l caffe/data/ilsvrc12/synsets.txt \ movie.mp4 这能找到在 movie.mp4 中的所有带有虎斑猫(tabby cat)的场景,并返回仅带有这些部分的结果 movie.cut.mp4。 (责任编辑:本港台直播) |