生成灰阶测试图

简介:
  • 代码
 * Generate YUV420P gray scale bar.
 * @param width    Width of Output YUV file.
 * @param height   Height of Output YUV file.
 * @param ymin     Max value of Y
 * @param ymax     Min value of Y
 * @param barnum   Number of bars
 * @param url_out  Location of Output YUV file.
 */
int simplest_yuv420_graybar(int width, int height,int ymin,int ymax,int barnum,char *url_out){
    int barwidth;
    float lum_inc;
    unsigned char lum_temp;
    int uv_width,uv_height;
    FILE *fp=NULL;
    unsigned char *data_y=NULL;
    unsigned char *data_u=NULL;
    unsigned char *data_v=NULL;
    int t=0,i=0,j=0;

    barwidth=width/barnum;
    lum_inc=((float)(ymax-ymin))/((float)(barnum-1));
    uv_width=width/2;
    uv_height=height/2;

    data_y=(unsigned char *)malloc(width*height);
    data_u=(unsigned char *)malloc(uv_width*uv_height);
    data_v=(unsigned char *)malloc(uv_width*uv_height);

    if((fp=fopen(url_out,"wb+"))==NULL){
        printf("Error: Cannot create file!");
        return -1;
    }

    //Output Info
    printf("Y, U, V value from picture's left to right:\n");
    for(t=0;t<(width/barwidth);t++){
        lum_temp=ymin+(char)(t*lum_inc);
        printf("%3d, 128, 128\n",lum_temp);
    }
    //Gen Data
    for(j=0;j<height;j++){
        for(i=0;i<width;i++){
            t=i/barwidth;
            lum_temp=ymin+(char)(t*lum_inc);
            data_y[j*width+i]=lum_temp;
        }
    }
    for(j=0;j<uv_height;j++){
        for(i=0;i<uv_width;i++){
            data_u[j*uv_width+i]=128;
        }
    }
    for(j=0;j<uv_height;j++){
        for(i=0;i<uv_width;i++){
            data_v[j*uv_width+i]=128;
        }
    }
    fwrite(data_y,width*height,1,fp);
    fwrite(data_u,uv_width*uv_height,1,fp);
    fwrite(data_v,uv_width*uv_height,1,fp);
    fclose(fp);
    free(data_y);
    free(data_u);
    free(data_v);
    return 0;
}
  • 执行
  • 效果
    test
相关文章
|
3月前
|
NoSQL 算法 大数据
国内首个图计算标准发布,悦数图数据库通过测试
近日,经中国通信标准化协会批准,《大数据图计算平台技术要求与测试方法》标准正式发布,这是我国首个图计算平台标准,为图计算平台的发展提供了一个标准化的指导方针,对于推动我国图技术的发展具有重要意义。
|
测试技术
软件测试面试题:优惠券发布后测试场景图和设计?
软件测试面试题:优惠券发布后测试场景图和设计?
102 0
|
人工智能 测试技术 程序员
4月24日云栖精选夜读:AI不可怕,就怕AI会画画——这里有一种你还不知道的‘图’灵测试…
有人说,AI(人工智能)有什么可怕的?它们不过是做一些人类不愿做的脏活、累活和一些可批量重复操作的活计,而对一些带有原创性质的活,比如艺术创作,AI就不灵光了。如果人工智能也能向这些领域进军呢?让我们拭目以待!
2979 0
密集恐惧症候群测试图
  密集恐惧症候群测试图! 胆小的请慎点!    看不懂...现在基本啥都不怕了...虽然有时会装着怕...
819 0
|
6天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
16 0
|
28天前
|
JavaScript jenkins 测试技术
这10款性能测试工具,收藏起来,测试人的工具箱!
这10款性能测试工具,收藏起来,测试人的工具箱!

热门文章

最新文章