工作小记(三)

今天终于是有了突破性的进展。

我把视频中的每一帧图像进行面部检测,然后通过模型自动标记。根据标记进行收集 等到收集到一串表情序列之后根据临界条件进行记录把这一串的起始终止位置转存到文本中,接着查找下一个表情序列。

所有序列找到之后,用ffmpeg进行视频的截取。

工作中的坑:

1.表情序列什么时候开始,什么时候终止。

2.表情序列的起止时间的判断

3.表情序列起止时间的存取

4.视频截取的时候参数的设置  参数的前后位置竟然对结果的影响有如此之大!

5.老问题,编码问题

其实很多坑并没有被“填上”,只是我用其他方法绕了过去,但终究只是临时,是坑的依然是坑,争取以后有时间了,能把该填的坑都填好。

由于是临时一边测试一边搞,所以整个项目工程 文件 代码 乱得很 不堪入目,就不贴上来了。看情况也许以后回贴出来。

目前还存在的问题:

表情序列的判断:我是以检测到人脸为起点(用列表存放信息 存取比较方便)

if(找到了人脸)

    {

        if(len(list)==0

            {

                list.append(当前的人脸类型,当前帧在视频中的时间)

            }

        else

            {

                if(list[len(list)-1](list中最后一个的类型)!=(当前检测到的类型) and (当前检测到的类型)!=(中性))

                    {

                        last_list.append(list存储的这一系列的类型以及起始时间:list[0],list[len(list)-1])

                        list=[]

                    }

                else

                    {

                        list.append(当前的人脸类型,当前帧在视频中的时间)

                    }

            }

    }

else

    {

        if(len(list)>0)

            {     

                    last_list.append(list存储的这一系列的类型以及起始时间:list[0],list[len(list)-1])

                    list=[]

            }

    }

这一方法完全试用的条件:人脸检测和表情分类的准确性必须很高(如果不高的话就会出现很多超级短的视频(单帧图像)  或者出现把预期想要的完整的表情序列拆分成多个细小的表情序列)


    

猜你喜欢

转载自blog.csdn.net/u010014073/article/details/79594245