C语言实现YUV420sp图像剪裁

本文介绍了如何使用C语言进行YUV420sp图像的剪裁操作。通过设置图像的原始尺寸和目标尺寸,然后分配内存空间,读取图像数据,对Y、UV分量进行剪裁和复制,最终实现图像的裁剪。代码示例详细展示了剪裁过程。
摘要由CSDN通过智能技术生成

C语言实现YUV420sp图像剪裁

	本文基于标准C语言,利用网上已有的分辨率较大的.yuv图像,进行对应位置的裁剪。
	话不多说开始正文

//首先设置被剪裁的对象大小,即你下载的图像分辨率(这里笔者下载的是3840*2060的图像,设置为常量

const int IR_Height = 2060;
const int IR_Width = 3840;

//其次设置你想要的输出分辨率,这里笔者选择了1080*1920
const int IR_Height1 = 1080;
const int IR_Width1 = 1920;

//设置原图Y分量大小(决定亮度的大小)
const int IR_SIZE = IR_Height * IR_Width;
//设置想要的图Y分量大小
const int IR_SIZE1 = IR_Height1 * IR_Width1;
//设置UV分量大小(这里右移两位除以4)
const int UV_SIZE_4K = IR_SIZE >> 2;
//设置UV分量大小(这里右移两位除以4)
const int UV_SIZE_4K1 = IR_SIZE1 >> 2;

//定义建立原图像Y分量的空间以二维数组形式保存
unsigned char(oriY_img)[IR_Width] = (unsigned char()[IR_Width])malloc(sizeof(unsigned char) * IR_SIZE);
//初始化内容为0
memset(oriY_img, 0, IR_SIZE);
/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值