RGB888转RGB565 C语言代码

原创 2018年04月15日 09:50:59

之前做过一个项目,需要把视频格式RGB888转换成RGB565的,算法有很多

下面这个是自己优化过的一些

static int rgb888_to_rgb565(void * psrc, int w, int h, void * pdst)
{
    unsigned char * psrc_temp;
    unsigned short * pdst_temp;

    u32 i,j;//这里init,有问题

    if (!psrc || !pdst || w <= 0 || h <= 0) {
        DISPERR("rgb888_to_rgb565 : parameter error\n");
        return -1;
    }

    psrc_temp = (unsigned char *)psrc;
    pdst_temp = (unsigned short *)pdst;
    for (i=0; i<h; i++) {
        for (j=0; j<w; j++) {
            //888 r|g|b -> 565 b|g|r
            *pdst_temp =(((psrc_temp[2] >> 3) & 0x1F) << 11)//b
                        |(((psrc_temp[1] >> 2) & 0x3F) << 5)//g
                        |(((psrc_temp[0] >> 3) & 0x1F) << 0);//r

            psrc_temp += 3;
            pdst_temp ++;
        }
        psrc_temp +=(3*16);
    }

    return 0;
}

cuda,常量内存使用2

#include #include "cuda_runtime.h" #include "device_launch_parameters.h" #include #include "assert...
  • qq_16699519
  • qq_16699519
  • 2016-03-24 16:53:35
  • 590

PHP5.5的一点变化

之前一直使用eAccelerator,参考:PHP安装eAccelerator   注意PHP5.5以后暂时不能使用eAccelerator 原因:其中一个我知道的是eAccelerator中使用了...
  • unix21
  • unix21
  • 2013-09-18 18:05:21
  • 2132

转: RGB565、RGB888互相转换原理和代码

转:http://www.xuebuyuan.com/935987.html 背景:在我们的计算机中图像是以RGB888格式显示图像的,24位图每个像素保存了32bit的数据,即RGB888+Alp...
  • u013316124
  • u013316124
  • 2015-12-01 10:35:53
  • 5548

RGB565 与 RGB888的相互转换

本文内容不是完全原创,参考了网上部分精华,做了整理。 RGB色彩模式(也翻译为“红绿蓝”,比较少用)是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B) 三个颜色通道的...
  • happy08god
  • happy08god
  • 2013-08-29 14:48:28
  • 19562

RGB888转RGB565工具

  • 2017年07月09日 16:26
  • 24KB
  • 下载

JAVA中颜色RGB888转RGB565的简单方法

有时为节省内存,我们在JAVA程序里使用RGB565颜色。这时可能会需要将颜色值由RGB888转化为RGB565。在网上找了许多方法,大多用的是位操作。并且我试了很多办法,转换的颜色和原来的颜色值都不...
  • do168
  • do168
  • 2016-06-24 18:29:16
  • 1697

Matlab处理彩色图像 RGB888-RGB565

image=imread('E:\64c.bmp'); fr=image(:,:,1); fg=image(:,:,2); fb=image(:,:,3); 以上代码为打开bmp图片并分开RG...
  • sinat_25326461
  • sinat_25326461
  • 2015-11-19 15:33:25
  • 1572

RGB565,RGB555, RGB888,RGB32转换

关于RGB565,RGB555, RGB888,RGB32的转换,在我的前一篇博文中我已经介绍过了关于RGB565->RGB888的步骤和思想。    今天上午又研究了一个上午,就谢了下来,希望能给...
  • u010606097
  • u010606097
  • 2013-12-06 08:28:52
  • 2344

RGB888 和 RGB565

今天作练习,是一个将RGB888的图像转换成RGB565在ARM 的 LCD上显示的小程序。里面的移位来移位去的完全不了。先是不管三七二是一,把程序运行了一下。图像是一行一行刷出来的,点是一个一个一行...
  • zsdt345a780rfajwet
  • zsdt345a780rfajwet
  • 2012-08-19 23:33:35
  • 5075

RGB565和RGB888的转换

(1)RGB565格式说明 RGB565彩色模式, 一个像素占两个字节, 其中:第一个字节的前5位用来表示R(Red),第一个字节的后三位+第二个字节的前三位用来表示G(Green),第二个字节的...
  • zuijinhaoma8
  • zuijinhaoma8
  • 2014-12-06 17:01:50
  • 593
收藏助手
不良信息举报
您举报文章:RGB888转RGB565 C语言代码
举报原因:
原因补充:

(最多只允许输入30个字)