视频图像互相转换时保留alpha通道

视频转图像

openCV

Add support for reading 4-channel BGRA frames from video
alalek commented on 19 Feb
There is already such option. To get RGBA frames (in case of RGBA native video stream) we should pass CAP_PROP_CONVERT_RGB=False
VideoCapture::set
What does disabling CV_CAP_PROP_CONVERT_RGB do?

根据以上说明,print(cap.set(cv2.CAP_PROP_CONVERT_RGB, False))输出了false,失败

ffmpeg

换一个思路,看看能否用ffmpeg实现

https://blog.csdn.net/pkueecser/article/details/8555261

ffmpeg -i  target_video_test.mov -r 25 -f image2 target_video_test/%d.png

这个能work,下一步

图像处理

imread

StackOverflow-How to load png images with 4 channels?
imread的时候加一个参数:

import cv2
im = cv2.imread("image.png", cv2.IMREAD_UNCHANGED)

img.shape变成了(x,x,4)需要改动一些代码

imwrite

不需要任何改动

图像转视频

Stackoverflow-Turn image sequence into video with transparency

To encode/import images with alpha to a video with alpha try: ffmpeg -i %d.png -vcodec png z.mov. Quicktime will play that.
To decode/export a video with alpha to images with alpha try: ffmpeg -i z.mov -f image2 export2\%d.png

video2img和img2video都有,我为啥一开始没搜到这篇。。。

ffmpeg -i target_video_test/%d.png  -vcodec png target_video_test_new.mov
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在白浅还是素素的阶段,她被擎苍封印了法力、容颜与记忆,她蒙昧如新生,除了白浅固有的善良纯真与倔强,她与身为上神的白...
    涓子Fiona阅读 4,930评论 0 51
  • 2017-04-07 买了验孕棒回来,仔细看了说明书,查了下月经过了4天的情况能否检测出来. 说明书说的是,早的话...
    深海一滴水阅读 1,166评论 0 0
  • 从岳阳火车到张家界,大巴转换到武陵源区。入住后休息。 第二天入景区,门票是四天有效,虽然之前看了地...
    仙二阅读 1,441评论 2 0
  • 电饼铛送到了。他果然买了,我没有太反对,当然也并非热烈支持。在持家方面,我有时候是简约派,随着年龄的增长,仪式感和...
    东西陌阅读 1,360评论 0 0

友情链接更多精彩内容