视频与图片之间的转换并制作为3d旋转相册展示
由于某种原因 想要搞怪一下
准备一个自己喜欢的短视频
将视频转换为图片
import cv2
def getFrame(videoPath, svPath):
cap = cv2.VideoCapture(videoPath)
numFrame = 0
while True:
if cap.grab():
flag, frame = cap.retrieve()
if not flag:
continue
else:
#cv2.imshow('video', frame)
numFrame += 1
newPath = svPath + str(numFrame) + ".jpg"
cv2.imencode('.jpg', frame)[1].tofile(newPath)
if cv2.waitKey(10) == 27:
break
if __name__ == '__main__':
getFrame('C:/Users/Administrator/Desktop/喵星人.mp4','C:/Users/Administrator/Desktop/3d相册/img/')
if cv2.waitKey(10) == 27
这里对这句代码进行说明一下,由于不理解代码去网上查了一下,发现27的含义:ESC的的ASCII码为27
将图片制作为3d旋转相册
1.总体结构展示
2.css文件代码
/*背景页面颜色设置*/
html{
background:linear-gradient(#FFFFE0 0%,#FFFACD 20%);/*背景颜色渐变*/
height: 100%;
color:#66ffff;/*字体颜色*/
}
/*动态样式设置*/
/*最外层容器样式*/
.wrap{
width: 200px;
height: 200px;
/*改变左右上下,图片方块移动*/
margin: 150px auto;
position: relative;
}
/*包裹所有容器样式*/
.cube{
width: 200px;
height: 200px;
margin: 0 auto;
transform-style: preserve-3d;
transform: rotateX(-30deg) rotateY(-80deg);
-webkit-animation: rotate 20s infinite;
/*匀速*/
animation-timing-function: linear;
}
@-webkit-keyframes rotate{
from{
transform: rotateX(0deg) rotateY(0deg);}
to{