1 colorBar介绍

colorBar主要是指一些图像处理中使用的常见纯色或者渐变色条。colorBar用途可作为测试样图来验证某些图像算法的效果,从而避免图像内容或者硬件对图像的干扰,使图像算法能够达到预期效果。colorBar常见类型如下:

(1) 纯色图像

(2) 水平4条彩色条纹

(3) 垂直4条彩色条纹

(4) 垂直8条彩色条纹

(5) 纯色背景上纯色目标

2 colorBar生成实现源码(以渐变条为例)

 /*
文件: ColorBar.h
功能: 绘制颜色渐变的条形Bar
*/
enum {GRAY=,RED=,GREEN=,BLUE=};
class CColorBar
{
public:
CColorBar();
virtual ~CColorBar();
void SetColorMode(int mode);
void DrawColorBar(CRect &client,CClientDC &dc);
private:
UINT m_mode;
};
 /*
文件: ColorBar.cpp
功能: 绘制颜色渐变的条形Bar
*/
CColorBar::CColorBar()
{
m_mode=GRAY;
} CColorBar::~CColorBar()
{ } void CColorBar::SetColorMode(int mode)
{
m_mode=mode;
} void CColorBar::DrawColorBar(CRect &client,CClientDC &dc)
{
CRect m_tab;
int N=;
COLORREF rgb;
double dh=(double) client.Height()/N;
CBrush *pBrush=NULL;
dc.Rectangle(client);
for(int i=;i<N;i++)
{
m_tab.left =client.left;
m_tab.right =client.right;
m_tab.bottom =client.bottom -i*dh;
m_tab.top =m_tab.bottom -dh; switch(m_mode)
{
case GRAY:
rgb=RGB(i,i,i);
break;
case RED:
rgb=RGB(i,,,);
break;
case GREEN:
rgb=RGB(,i,);
break;
case BLUE:
rgb=RGB(,,i);
break;
default:
break;
} pBrush=new CBrush(rgb);
dc.FillRect(m_tab,pBrush); } delete pBrush;
pBrush=NULL;
}
 CColorBar bar;
CClientDC dc(this);
CRect m_bar(,,,);
bar.SetColorMode(RED);
bar.DrawColorBar(m_bar,dc);

运行后输出如下:

图像处理之生成ColorBar的更多相关文章

  1. php图形图像处理之生成验证码

    \(^o^)/~ 现在网上越来越离不开验证码了,不知道小伙伴们知不知利用php的GD库就可以生成验证码,Σ(⊙▽⊙"a ...... 首先介绍几个需要用的函数. 1.imagesetpixe ...

  2. 图像处理项目——生成csv文件提高读取效率

    利用pyhton脚本生成csv文件 *开发环境为windows PyCharm*使用的是pyhton脚本*生成人脸和人脸对应的标签的csv文件 一:主要步骤 1.载入对应路径2.提取每一张图片对应的位 ...

  3. ASP.NET 画图与图像处理-生成高质量缩略图

    http://www.cftea.com/c/2007/08/SG9WFLZJD62Z2D0O.asp

  4. php 图像处理 抠图,生成背景透明png 图片

    *自定义一个图片等比缩放函数 *@param string $picname 被缩放图片名 *@param string $path 被缩放图片路径 *@param int $maxWidth 图片被 ...

  5. 在 iPad 上试验从用算法生成法线贴图-到法线映射光照效果

    在 iPad 上试验从用算法生成法线贴图-到法线映射光照效果 目录 概述 一般来说, 法线贴图是用高模的法线图, 低模的纹理图, 来生成较好的渲染效果. 而法线图通常是通过图像处理软件来生成的, 这里 ...

  6. php图形图像处理技术

    图形图像处理技术,gd库的强大支持,PHP的图像可以是PHP的强项,PHP图形化类库,jpgraph是一款非常好用的强大的图形处理工具. 在PHP中加载GD库 gd官方网址下载: http://www ...

  7. PHP全栈学习笔记7

    图形图像处理技术,gd库的强大支持,PHP的图像可以是PHP的强项,PHP图形化类库,jpgraph是一款非常好用的强大的图形处理工具. 在PHP中加载GD库 gd官方网址下载: http://www ...

  8. Oracle 11g数据库详解(2)

    FAILED_LOGIN_ATTEMPTS 用于指定连续登陆失败的最大次数 达到最大次数后,用户会被锁定,登陆时提示ORA-28000 UNLIMITED为不限制 精确无误差 是 实时 PASSWOR ...

  9. < python PIL - 批量图像处理 - 生成自定义大小图像 >

    < python PIL - 批量图像处理 - 生成自定义大小图像 > 直接用python自带的PIL图像库,对一个文件夹下所有jpg/png的图像进行自定义像素变换 from PIL i ...

随机推荐

  1. 【WPF】给TextBox添上Label

    原文:[WPF]给TextBox添上Label 引言     在客户端开发中,要说出现频率大的控件,必定有TextBox的身影.然而在TextBox的旁边通常得有个基友Label,形影不离.为此,我们 ...

  2. noip 提高组 2010

    T1:机器翻译 题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 题目描述 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换.对于每个英 ...

  3. vector 去重

    1.使用unique函数: sort(v.begin(),v.end()); v.erase(unique(v.begin(), v.end()), v.end()); //unique()函数将重复 ...

  4. Bluedroid协议栈HCI线程分析

    蓝牙进程中有多个线程,其中HCI 线程是负责处理蓝牙主机端和控制器的数据处理和收发的工作. 本篇文章就是分析一下该线程的数据处理流程. 1.跟HCI相关的接口 首先看看hci的相关的接口:在hci_l ...

  5. 华为手机自带浏览器不支持 ES6 语法

    原文地址:https://caochangkui.github.io/huawei-es6/ 华为手机自带浏览器对 es6 语法的支持度极差,哪怕最新的荣耀10 手机也有该毛病!所以,移动端项目开发中 ...

  6. 设计模式 笔记 装饰模式 Decorator

    //---------------------------15/04/17---------------------------- //Decorator 装饰模式----对象结构型模式 /* 1:意 ...

  7. RabbitMq基础教程之基本概念

    RabbitMq基础教程之基本概念 RabbitMQ是一个消息队列,和Kafka以及阿里的ActiveMQ从属性来讲,干的都是一回事.消息队列的主要目的实现消息的生产者和消费者之间的解耦,支持多应用之 ...

  8. 区块链--Bitcoin共识机制

    目录 中心化和去中心化 比特币共识机制 拜占庭将军共识机制 比特币成功解决了拜占庭问题 中心化和去中心化 中心化模式: 优点:效率高 缺点:中间层次太多(组织层次连接) 去中心化模式: 缺点:效率低 ...

  9. Magento 总结

    ZEND EAV 速度 作者:李淼链接:https://www.zhihu.com/question/20656910/answer/25793452来源:知乎著作权归作者所有.商业转载请联系作者获得 ...

  10. 3月web前端面试小结

    说一下box-sizing的应用场景 box-sizing的属性值分为两个,border-box和content-box,其中, border-box:width=content+padding+bo ...