• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

jpg图片转换成yuv420(NV12)数据文件

武飞扬头像
鲁破特之泪
帮助1

代码功能:将文件夹下所有jpg文件转换成同名的yuv文件。

yuv文件是yuv420(NV12)格式的数据位,文件内容为yyyyyyyyy…uvuvuv…

import os
import cv2
from tqdm import tqdm


def bgr2yuv420bin(path_yuv, img_bgr):
    yuv = cv2.cvtColor(img_bgr, cv2.COLOR_BGR2YUV)
    y = yuv[:, :, 0]
    u = yuv[:, :, 1]
    v = yuv[:, :, 2]
    u = cv2.resize(u, (int(u.shape[1] / 2), int(u.shape[0] / 2)))
    v = cv2.resize(v, (int(v.shape[1] / 2), int(v.shape[0] / 2)))
    with open(path_yuv, 'wb') as f:
        for row in range(y.shape[0]):
            for col in range(y.shape[1]):
                f.write(y[row, col])
        for row in range(u.shape[0]):
            for col in range(u.shape[1]):
                f.write(u[row, col])
                f.write(v[row, col])


path_jpg = r'/media/fang/Samsung USB/tsr/input_src/weight'  # jpg图片路径 不要有中文
path_output = r'/media/fang/3441-913C/tsr/test'  # 输出yuv文件路径

for root, dirs, files in os.walk(path_jpg):
    for file in tqdm(files):
        img = cv2.imread(root   '/'   file)
        bgr2yuv420bin(path_output   '/'   file.replace('jpg', 'yuv'), img)

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcgeif
系列文章
更多 icon
同类精品
更多 icon
继续加载