diff --git "a/\344\270\273\351\242\230\344\270\200 Gitee AI \344\275\223\351\252\214\345\276\201\351\233\206/\345\237\272\344\272\216 Gitee AI\346\225\260\346\215\256\351\233\206\345\256\236\347\216\260\345\274\271\345\271\225\344\270\215\351\201\256\346\214\241\344\272\272\345\203\217\346\273\232\345\212\250-\345\207\214\347\251\272\346\232\227\347\276\275.md" "b/\344\270\273\351\242\230\344\270\200 Gitee AI \344\275\223\351\252\214\345\276\201\351\233\206/\345\237\272\344\272\216 Gitee AI\346\225\260\346\215\256\351\233\206\345\256\236\347\216\260\345\274\271\345\271\225\344\270\215\351\201\256\346\214\241\344\272\272\345\203\217\346\273\232\345\212\250-\345\207\214\347\251\272\346\232\227\347\276\275.md" new file mode 100644 index 0000000000000000000000000000000000000000..9330eb68594eb7ff2e600b64709e29ffd814b9c4 --- /dev/null +++ "b/\344\270\273\351\242\230\344\270\200 Gitee AI \344\275\223\351\252\214\345\276\201\351\233\206/\345\237\272\344\272\216 Gitee AI\346\225\260\346\215\256\351\233\206\345\256\236\347\216\260\345\274\271\345\271\225\344\270\215\351\201\256\346\214\241\344\272\272\345\203\217\346\273\232\345\212\250-\345\207\214\347\251\272\346\232\227\347\276\275.md" @@ -0,0 +1,133 @@ +### 引言 + 最近在刷视频的时候不巧发现了一个giteeAI工具,根据内部推荐的数据集,最后找到了一个叫tensorflow.js的github库,能够简单实现对于视频人像的扣取,从而可以为视频生成AI遮罩层,最终实现弹幕不会遮住人像的效果。 + +### 效果如下 + 由于使用的数据集不是很大,所以运行起来的效果可能不如B站的完美,由于数据集是第三方数据集,需要挂梯子才能够有效访问,否则会出现资源加载失败的bug。 + +[video(video-ga70JKVi-1730340952431)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=113399602086870)(image-https://img-blog.csdnimg.cn/img_convert/aa2971def2848baa6c66972bcef083e3.jpeg)(title-弹幕遮罩效果演示录频)] +### 实现原理 + 在实现上,主要是利用了前端的mask-image属性,mask-image支持png格式的图片,然后内容只会出现在png非透明区域(也就是非透明背景色块),从而实现了人像不会被遮罩。关键在于视频每一帧的人像扣取并生成一个对人像的无色色块。具体的实现代码如下(完整代码链接): + +```javascript + + + + + + + + + + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + 手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试 + + + + + + +``` + 但是目前giteeAI不能够自己上传自己的数据集,不然的话可以看到更多的更加细腻的识别数据集: + +### 补充说明 + 一般来说AI模型的运行应该交给后端,现实上,可以将视频的每一帧获取之后提交给后端,然后生成mask-image之后前端再显示(但是这样好像给前后端带来的流量压力都有些大,如果有做过这方面的大佬希望能够再评论区指点一二),或者继续期待我们GiteeAI提供更多完备的AI数据集和API调用接口,更多功能可以继续去giteeAI尝试哦。 + + + + + + +CSDN链接:https://blog.csdn.net/weixin_46560512/article/details/143381064 diff --git "a/\344\270\273\351\242\230\344\272\214 \347\250\213\345\272\217\345\221\230\347\205\247\347\211\207\345\276\201\351\233\206/\346\241\214\346\220\255\347\205\247/\350\207\264\346\225\254\347\211\233\351\251\254.jpg" "b/\344\270\273\351\242\230\344\272\214 \347\250\213\345\272\217\345\221\230\347\205\247\347\211\207\345\276\201\351\233\206/\346\241\214\346\220\255\347\205\247/\350\207\264\346\225\254\347\211\233\351\251\254.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..dbdb9d7b35e6b0abd3a29afd555eb48c1804b0d9 Binary files /dev/null and "b/\344\270\273\351\242\230\344\272\214 \347\250\213\345\272\217\345\221\230\347\205\247\347\211\207\345\276\201\351\233\206/\346\241\214\346\220\255\347\205\247/\350\207\264\346\225\254\347\211\233\351\251\254.jpg" differ
手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试手动测试