批量转换不同宽高的YUV编码格式图片为jpg格式方法

NV12存储格式下YUV编码的图片转化成jpg格式方法

yuv文件名称的格式为:rgb_800_896_20220615193640.yuv

# -*-coding: utf-8 -*-
#@FileName : NV21yuv-rgb.py
import cv2
import numpy as np
def NV12RGB(yuv_path, width, height):
with open(yuv_path, 'rb') as f:
yuvdata = np.fromfile(f, dtype=np.uint8)
cv_format = cv2.COLOR_YUV2BGR_NV12
bgr_img = cv2.cvtColor(yuvdata.reshape((height*3//2, width)), cv_format)
return bgr_img
if __name__ == "__main__":
path = r"D:\自动化测试\YUV图片" #yuv格式图片存放路径
save_path = r"D:\LR\test" #生成jpg文件目录
from base.file_helper import FileHelper
image_yuv_list = FileHelper.find_files(file_dirOrDirlist=path, file_suffix="yuv")
id = 0
for i in image_yuv_list:
filename = i.split("\\")[-1]
print(filename)
width = int(filename.split("_")[1])
height = int(filename.split("_")[2])
img = NV12RGB(yuv_path=i, width=width, height=height)
save_path_file = save_path + "\\" + str(id)+ ".jpg"
id = id+1
print(save_path_file)
cv2.imwrite(save_path_file, img)

 

posted @   小菜鸟qing  阅读(648)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示