精华内容
下载资源
问答
  • 获取图片深度

    千次阅读 2016-07-27 16:57:08
    !! 大概思路:图像的深度,就存储在文件的byte数组里,找到位置,就能获取到。...png图片深度获取: //png int bitsPerPixel = bytes[24] & 0xff; if ((bytes[25] & 0xff) == 2) { bitsPerPixe

    文章参考位置:http://tieba.baidu.com/p/1832653283,感谢楼主!!!

    大概思路:图像的位深度,就存储在文件的byte数组里,找到位置,就能获取到。

    png图片的位深度获取:

    		//png
    		int bitsPerPixel = bytes[24] & 0xff;
    		if ((bytes[25] & 0xff) == 2) {
    			bitsPerPixel *= 3;
    		} else if ((bytes[25] & 0xff) == 6) {
    			bitsPerPixel *= 4;
    		}
    jpg图片:

    		//jpg
    		int i = 2;
    		int bitsPerPixel=0;
    		while (true) {
    			int marker = (bytes[i] & 0xff) << 8 | (bytes[i + 1] & 0xff);
    			int size = (bytes[i + 2] & 0xff) << 8 | (bytes[i + 3] & 0xff);
    			if (marker >= 0xffc0 && marker <= 0xffcf && marker != 0xffc4
    					&& marker != 0xffc8) {
    				bitsPerPixel = (bytes[i + 4] & 0xff) * (bytes[i + 9] & 0xff);
    				break;
    			} else {
    				i += size + 2;
    			}
    		}
    bmp

    		//bmp
    		int bitsPerPixel=(bytes[28] & 0xff) | (bytes[29] & 0xff) << 8;
    gif:获取到是第一张图片的位深度,对于那种多张图片组成的动态图的位深度,应该是所有图片中位深度最高的那个才是最终的值。
    		//gif
    		int bitsPerPixel=(bytes[10] & 0x07) + 1;





    展开全文
  • 图片位深获取

    千次阅读 2017-06-21 11:35:20
    大概思路:图像的位深度,就存储在文件的byte数组里,...//获取bmp图片位深 int getBmpBitDepth(const QString& imagePath) { QFile imageFile(imagePath); if (!imageFile.open(QIODevice::ReadWrite)) { return -1; }
    大概思路:图像的位深度,就存储在文件的byte数组里,找到位置,就能获取到。
    //获取bmp图片位深
    
    int getBmpBitDepth(constQString&imagePath)
    {
    QFile imageFile(imagePath);
    if(!imageFile.open(QIODevice::ReadWrite)){
    return -1;
    }
    QByteArray ba =imageFile.readAll();
    int bitsPerPixel =(ba[28]& 0xff)| (ba[29]& 0xff)<< 8;
    printf("Bmpdepth=%d\n",bitsPerPixel);
    imageFile.close();
    return bitsPerPixel;
    }
    
    //获取png图片位深
    int getPngBitDepth(constQString&imagePath)
    {
    QFile imageFile(imagePath);
    if(!imageFile.open(QIODevice::ReadWrite)){
    return -1;
    }
    QByteArray ba =imageFile.readAll();
    
    int bitsPerPixel =ba[24]& 0xff;
    if((ba[25]& 0xff)== 2){
    bitsPerPixel*= 3;
    }else if((ba[25]& 0xff)== 6){
    bitsPerPixel*= 4;
    }
    printf("Pngdepth=%d\n",bitsPerPixel);
    imageFile.close();
    return bitsPerPixel;
    }
    
    //获取Jpeg图片位深
    int getJpegBitDepth(constQString&imagePath)
    {
    QFile imageFile(imagePath);
    if(!imageFile.open(QIODevice::ReadWrite)){
    return -1;
    }
    QByteArray ba =imageFile.readAll();
    
    int i =2;
    int bitsPerPixel=0;
    while(true){
    int marker =(ba[i] &0xff)<< 8| (ba[i+ 1]& 0xff);
    int size =(ba[i +2]& 0xff)<< 8| (ba[i+ 3]& 0xff);
    if(marker >=0xffc0&& marker<= 0xffcf&& marker!= 0xffc4
    &&marker !=0xffc8){
    bitsPerPixel= (ba[i+ 4]& 0xff)* (ba[i+ 9]& 0xff);
    break;
    }else{
    i+= size+ 2;
    }
    }
    printf("Jpegdepth=%d\n",bitsPerPixel);
    imageFile.close();
    return bitsPerPixel;
    }
    
    
    //获取gif位深
    gif:获取到是第一张图片的位深度,对于那种多张图片组成的动态图的位深度,应该是所有图片中位深度最高的那个才是最终的值。  
    
    int bitsPerPixel=(bytes[10] & 0x07) + 1;  
    
    int main()
    {
    QString path_0("D:\\workspace\\aaa.bmp");
    int bmpDepth =getBmpBitDepth(path_0);
    
    QString path_1("D:\\workspace\\tray.png");
    int pngDepth =getPngBitDepth(path_1);
    
    QString path_2("D:\\workspace\\1111.jpg");
    int jpegDepth =getJpegBitDepth(path_2);
    
    }
    



    展开全文
  • Java获取图片属性

    2015-07-10 20:48:00
    BufferdImagebfi=ImageIO.read(newFile(“d:/file/img.jpg...//获取图片位深度 IntimgBit=bfi.getColorModel().getPixelSize(); //获取图片颜色模式RGBCMYK等模式 bfi.getColorModel().getColorSpace().getType()...

    BufferdImage bfi = ImageIO.read( new File(“d:/file/img.jpg”) );

    //获取图片位深度

    Int imgBit = bfi.getColorModel().getPixelSize();

    //获取图片颜色模式 RGB CMYK等模式

    bfi.getColorModel().getColorSpace().getType();

     

     

    AE 的视频工程不能使用32位的图片

    可以用画图工具打开 然后 保存为24位图片

    也可以使用java转码图片

     

    详细解答

    http://kickjava.com/src/imageinfo/ImageInfo.java.htm

    转载于:https://www.cnblogs.com/lionsblog/p/4637467.html

    展开全文
  • //获取图片文件的大小 int sizeValue =[[attr objectForKey:NSFileSize] intValue]; //图片文件的最后修改时间  NSString *modifiedString = [attr objectForKey:NSFileModificationDate] ; [lastModifiedField...
        NSString *filePath = @"../work/png/11.png";
        NSFileManager *fm =[NSFileManager defaultManager];
        if ([fm fileExistsAtPath:filePath])
        {
            NSString *filepathName =[filePath lastPathComponent];
           
            
            NSDictionary *attr =[fm attributesOfItemAtPath:filePath error:nil];
             //获取图片文件的大小
            int sizeValue =[[attr objectForKey:NSFileSize] intValue];
               //图片文件的最后修改时间
            NSString *modifiedString = [attr objectForKey:NSFileModificationDate] ;
            [lastModifiedField setStringValue:[NSString stringWithFormat:@"Last modified:%@",modifiedString]];
            NSData *data =[[NSData alloc] initWithContentsOfFile:filePath];
            NSImage *showImage = [[NSImage alloc] initWithData:data] ;
            if(showImage != nil && [showImage isValid] )
            { 
              //图片的宽高
               NSString *imageSize = [NSString stringWithFormat:@"Dimensions: %0.0f * %0.0f px",showImage.size.width,showImage.size.height];
    
              //图片的位深度值
               NSData *imageData =[showImage TIFFRepresentation];
               NSBitmapImageRep *bitmapRep =[[NSBitmapImageRep alloc] initWithData:imageData];
               int pixel = [bitmapRep bitsPerPixel];
             }
    

    
    
    展开全文
  • Labview关于获取BMP文件图片信息篇 问题: 打开本地的BMP文件,希望程序能自己获取到不同BMP文件的深度和分辨率,这两个参数在单片机和摄像头的地位很重要。 解决方案: 1,设计一套能打开本地BMP文件集的...
  • 如何快速批量提取图片信息到Excel表格中,如何批量获取图片大小尺寸信息 不知道如何如获取图片的文件路径、文件名、图片大小尺寸等很多图片信息 路径、分辨率、宽度、高度、垂直水平分辨率、深度、创建日期、...
  • 使用C++ opencv将16图像映射到8

    千次阅读 2020-03-26 18:52:34
    直接在Window里打开一张16tif格式的图片 如果能将16转换成8的话,就能正常显示了。 原理 一张16的图像,意思是一张图像的每个像素点的像素值都由16的二进制数表示,每个像素点的颜色有 2^16 = 65536 种...
  • 文章目录BMP图像文件格式BMP文件简介BMP文件组成结构BMP文件字节序实验内容实验步骤导入库打开BMP文件并获取文件的基本信息读取调色版获得BMP文件字节序生成图片并转换为BMP24将5幅图片全部转为24BMP格式总结 ...
  • 图像:一个一个像素点构成。所有不同的颜色像素点构成一幅完整图像。 位图表示图像的方法:记录一幅图像中所有像素点(pixels)信息 图像(位图)的深度:表示一个像素点用多少个bit ...加载大图片产生OOM...
  • 面试6--图片压缩

    2019-04-02 16:05:51
    质量压缩法、比例压缩法(根据路径获取图片并压缩)和采样率压缩。 1。 保持像素的前提下改变图片的位深及透明度,(即:通过算法抠掉(同化)了图片中的一些某个些点附近相近的像素),达到降低质量压缩文件大小的...
  • 常用的基本函数 Mat矩阵的定义 data:Mat对象中的一个指针,指向内存中存放矩阵数据的一块内存 (uchar* data) ...常见的是一张彩色图片有红、绿、蓝三个通道。 depth:深度,即每一个像素的位数(b
  • 大概是每秒3帧左右,而图片分辨率是 5472*3648, 8深度,19.0MB 图片比较大,程序开启,只是后台采集摄像头的图片,还什么都没做,就已经吃掉1G多的内存了 现在好不容易给降到稳定在500MB内存占用左右了,但感觉和...
  • 按照下列步骤,使用“获取图像”方法生成单个前面板对象的图像。 1.在程序框图上,右键单击要生成图像的控件的接线端,从快捷菜单中选择创建»调用节点»获取图像,创建调用节点。 2.右键单击图像深度输入端,从快捷...
  • 它使用pngquant和zopflipng PNG优化工具将选择的深度,颜色类型和调色板缩减与zopfli DEFLATE压缩算法编码结合在一起。 与无损方法相比,此方法导致文件大小显着增加,但代价是图像质量相对适度降低(请参见下面...
  • 提问的智慧 How To Ask Questions The Smart Way ... Raymond, Rick Moen 本指南英文版版权为 Eric S.... ...Copyleft 2001 by D.H.Grand(nOBODY/Ginux), 2010 by Gasolin, 2015 by Ryan Wu 本中文指南是基于原文 3.10 版...
  • 1 图片文字数据的获取 2 图片的调整 1 图片文字数据的获取 1.1位图 首先,我们选取的图片是位图,也就是bmp格式的图片,什么是位图呢? 百度:位图(Bitmap),又称栅格图(英语:Raster graphics)或点阵图,是使用...
  • //12,24,36位图片转换成1图 DestBmp用于接收数据的DestBmp指针,转换过程中包括自动参数重置 bool ConvertTo12Bit(CSBitmap* DestBmp); //1,24,36位图片转换成12图 DestBmp用于接收数据的DestBmp...
  • 首先根据图片可以获取考生:姓名、准考证号、报名号 信息挖 登录学校研招网,初试成绩查看办法 可以直接获取考生的登陆账号,考生密码为身份证后六(生日+地方+性别(男:奇数 女:偶数)+验证码 另外根据姓名...
  • 修改u-boot的开机logo

    2018-01-23 11:34:47
    1. 获取一张BMP的图片,修改之,让其色为8,即256色,如果用24,则显示出问题,(至于是否能用24,有待深究)。 2. 将制作好的BMP图片,放置到/tools/logos下面。 3. 修改/tools/Makefile中的LOGO_BMP,使...
  • 38、图片加载器 39、意图相关工具类 40、JSON操作相关 41、软键盘相关 42、打印日志 43、循环定时器 44、阴历阳历相关 45、m3u8文件解析类 46、偶对象相关 47、获取MD5相关 48、音频播放相关 49、共享内存相关 50、...
  • [ u-boot: git://git.denx.de/u-...1. 获取一张BMP的图片,修改之,让其色为8,即256色,如果用24,则显示出问题,(至于是否能用24,有待深究)。 2. 将制作好的BMP图片,放置到/tools/logos下面。 3
  • u-boot的开机logo及显示过程

    千次阅读 2015-08-31 08:11:20
    u-boot下载地址:u-boot: git://git.denx....1. 获取一张BMP的图片,修改之,让其色为8,即256色,如果用24,则显示出问题,(至于是否能用24,有待深究)。 2. 将制作好的BMP图片,放置到/tools/logos下面
  • 可以获取、设置图片的信息,如宽、高、DPI、位深等等;也可以对图片进行灰度、剪切、翻转等处理。总之功能非常强大。 下载地址:点我点我 使用方法 1、编译CxImage; 2、将cximage600_full\CxImage中的头文件拷...
  • uboot 修改启动logo

    千次阅读 2018-03-20 23:38:51
    1. 获取一张图片为其色为8,即256色(右击-&gt;编辑(画板打开)-&gt;另存为-&gt;test.bmp(下拉框选择256色位图))2. 将制作好的BMP图片,放置到&lt;u-boot&gt;/tools/logos下面3. 修改&...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 167
精华内容 66
关键字:

获取图片位深