精华内容
下载资源
问答
  • 《Detecting Text in Natural Scenes with Stroke Width Transform》,这是微软公司的一篇发表于CVPR2010的文章,使用传统方法来检测自然场景中的文本。代码地址:https://github.com/aperrau/DetectText 因为算是...

    《Detecting Text in Natural Scenes with Stroke Width Transform》,这是微软公司的一篇发表于CVPR2010的文章,使用传统方法来检测自然场景中的文本。代码地址:https://github.com/aperrau/DetectText

    因为算是一个比较经典的文章,所以看完记录一下。当然github还有其他版本的实现代码,上面的代码几乎和原文的原理一样,方便和文章一起阅读,因此放在这。

    下面根据原文的结构和上述提供的代码详细的解读一下该算法

    总的来说该算法分为四步:

    1. 利用canny算子检测图片的边界
    2. 笔画宽度变换-Stroke Width Transform(这一步输出的图像我们称为SWT图像)
    3. 通过SWT图像得到多个连通域
    4. 通过自定义的规则过滤一些连通域,得到候选连通域
    5. 将连通域合并得到文本行

    一、利用canny算子检测图片的边界

    这步不用多说,基础的图像处理知识,利用OpenCV 的Canny函数可以得到图片边缘检测的结果。

    二、笔画宽度变换(Stroke Width Transform)

    先要剧透一点,也是需要明确的一点,这一步输出图像和输入图像大小一样,只是输出图像像素为笔画的宽度,具体如下。
    在这里插入图片描述

    如上图所示,通过边缘检测得到上图a,假设现在从边缘上的点p开始,根据p点梯度的反方向找到边缘另一边的点q,如果p点的梯度与q点梯度的反方向夹角在±π/6\pm\pi/6之间,那么这两点间的距离为一个笔画宽度,那么p点和q点以及它们之间的像素在SWT输出图像中对应位置的值为p和q点的距离大小。

    按照上述的计算方法会有两种情况需要考虑。如下图所示,
    下图a表示一个笔画中的像素可能得到两个笔画宽度,这种情况下将红点出的笔画宽度设置为最小的那个值,下图b表示当一个笔画出现更为复杂情况,b图中的红点计算出的两个笔画宽度用两个红线表示,这两红线都无法真正表示笔画的宽度,这时候笔画宽度取这里面所有像素计算得到的笔画宽度的中值作为红点出的笔画宽度。
    在这里插入图片描述

    因为有文字比背景更亮和背景比文字更亮两种情况,这样会导致边缘的梯度方向相反,所以这一个步骤要执行两遍。这个步骤结束后得到一张SWT图像。

    三、通过SWT图像得到多个连通域

    在通过上述步骤得到SWT输出图像后,该图像大小与原图像大小一致,图像中的像素值为对应像素所在笔画的宽度(下面称为SWT值)。现将相邻像素SWT值比不超过3.0的归为一个连通域。这样就能得到多个连通域。

    四、过滤连通域

    上述步骤输出的多个连通域中,并不是所有的连通域都被认为是笔画候选区域,需要过滤一些噪声的影响,过滤的规则有:

    1. 如果某连通域的方差过大(方差大于连通域的一半为方差过大为过大),则认为该连通域不是有效的
    2. 如果某连通域过大(宽大于300)或者过小(宽小于10),则认为该连通域不是有效的(代码中只过滤了过大的连通域,连通域的长宽为连通域外接矩形的长宽)
    3. 如果某连通域的长宽比不在0.1-10的范围内,则认为该连通域不是有效的(连通域的长宽为连通域外接矩形的长宽)
    4. 如果某连通域的外接矩形包含其他两个连通域,则认为该连通域不是有效的(代码中判定,如果某个连通域的外接矩形包含两个或两个以上连通域外接矩形的中心时,认为其包含了两个连通域)

    上述条件都满足的连通域,认为是笔画候选区域,用于输入给下一步操作。

    五、将连通域合并得到文本行

    文中认为,在自然场景中,一般不会只有单个字母出现,所有将连通域合并为文本有利于进一步将噪声排除。

    当两个连通域满足下面条件时,认为这两个连通域是一对:

    1. 两个连通域中值的比小于2.0(连通域中值,指的是连通域中所有像素值的中值)
    2. 两个连通域高的比小于2.0(连通域的高,指其外界矩形的高)
    3. 两个连通域之间的距离小于较宽的连通域宽度的3倍(连通域之间的距离为连通域外界矩形中心点之间的距离)
    4. 两个连通域的颜色相似(代码用两个连通域对应于原图区域的像素均值代表该连通域的颜色)

    得到两两连通域组成的多对连通域后,如果有两连通域有共享的连通域,共享的连通域都在连通域对的一端(即连通域的首端或者尾端),且方向相同(方向用一个连通域中心到另一个连通域中心的方向),就将这两对连通域合并为一个新的连通域组,依次进行,知道没有连通域对需要合并则合并结束。

    最后将合并完的结果中滤除小于3的连通域的连通域组得到的最终结果,认为是一行文字。

    到这里SWT的文字检测算法就介绍完了。

    中文本定位与识别的评测方法

    欢迎加入OCR交流群:785515057(此群已满)
    欢迎加入OCR交流群2:826714963

    参考
    1.《Detecting Text in Natural Scenes with Stroke Width Transform》
    2.https://sites.google.com/site/roboticssaurav/strokewidthnokia
    3.https://github.com/aperrau/DetectText
    4.https://www.cnblogs.com/dawnminghuang/p/3807678.html

    展开全文
  • 文章:A robust boosting tracker with minimum error bound in a Co-training framework

    文章:A robust boosting tracker with minimum error bound in a Co-training framework

    Rong Liu ; Nat. Lab. of Pattern Recognition, Chinese Acad. of Sci., Beijing, China ; Jian Cheng ; Hanqing Lu: ICCV,2009

     

        这篇文章是中科院自动化所2009年发在ICCV上面的文章。用一句话来总结这篇文章是:The most important contribution is that we find a boostingerror upper bound in a co-training framework to guide the novel tracker construction。这篇文章正是发现一般的boosting和co-training的方法,他们的得到的结果的错误率有一个上界。于是找到这个错误率,并通过对它的最小化来引导tracker的生成。由此便得到了一个准确率很好的tracker。作者同时还对这个上界进行了证明。这就是这篇文章主要做的工作。(足见作者的数学功底)

        看完了论文的introduction后知道09年前的主要的tracking的算法和他们的特点:1、LDA 简单但是tracker效果不能很好的提高;2、基于SVM的support vector tracker效果好,但是降低了对于复杂背景的适应能力;3、使用多特征的Ensemble tracker 有明显的优势,但是他是对pixel操作的,丢失了很多的结构信息;4、on-line boosting有很好的适应能力,但是会漂移(用文章的原话说是:self-training process which use the classification results toupdate the classifier itself)。很明显作者也关注到06年的这篇on-line boosting的文章中存在的问题:拿检测到的结果来更新分类器。于是他也想到了半监督的方法(这篇论文的作者08年的另一篇论文就是通过semi-supervised方法改进了这篇论文)。不同的是他通过co-training和boosting的方法。

        如他的文章所说,他不是简单的将boosting和co-training合起来,而是导出boosting error的上界,并由此构造分类器。如下面的Eq(1)所示,是一个有adaboost构造的强分类器。

        而这个强分类器的错误如Eq(2)所示,其中的Zt如Eq(3)所示。而Eq(3)中的Dt(i)表示第i个sample第t次训练时的归一化权重。结合Eq(1)就可以推导出Eq(2)。比较好理解。

        而下面的这个式子是在2007年的一篇叫做:Bayesian co-training的文章中推导出来的。其中的j是Multi-view algorithm(多视角算法)中的系数,代表视角的个数。 本文中的view有两个,即:j=2 。可见,若是使用贝叶斯决策构造分类器就满足该式子。我们也由此知道这类错误有一个上界如Eq(4)所示。Eq(5)则是通过co-training构造的最终的强分类器。

     

     

      

     

        接下来,作者花了大量的章节来证明这个错误函数是有上界的。

        首先,证明了下面的这个式子。证明的过程大概是这样的:在不失一般性的情况下,做三个假设:1、training sample 量很大;2、在不同视角(view)中的特征所给的标签条件独立;3、依照不同的视角的决策大体是一致的。然后,根据前面的Eq(2)(5),最重要的是在做Eq(1)的转化便可以证明出来。

        但是这里有个问题,上面的证明是认为所有的样本都是有标签的,于是推导到半监督的学习当中。将所有的样本分为两部分来求解,有标签的和上面一样;没标签的通过错误率来推导,关键步骤用到了Eq(4)。具体的证明还是要认认真真的看论文原文。

        证明了上面的结论后,就可以使用它来构造分类器了。下面具体列出本文使用的特征和方法。


        本文对100帧图像进行跟踪,对比其他算法。将其中的前十帧作为是有标签的,用来训练。后面的90帧样本作为无标签的,用来测试。对前十个样本,建立两种特征池,一种是颜色特征(49种组合的color feature),另一种是LBP特征(25种)。通过这两种特征构造直方图,分别用来训练分类器(也就是说,这里采用的muti-view算法中的视角数是2,即j=2)。这里的弱分类器是通过bayesian decision criterion 构造的(也就说他的错误的大小存在一个上界,如Eq(4))。

        到此刻,前期的准备工作都已经完成。接下来的重点就是如何来更新分类器的问题了。作者的基本思路还是使用boosting方法:分别更新两个视角中每个弱分类器以及它们的权重。然后综合两个视角的结果(co-training)构造强的分类器。关键的不同时更新规则的不同。首先找到这种分类器的错误的表达式;然后,得到它的上界;最后,将这个上界最小化,于是相应的选出错误最小的那个弱分类器以及得到它的权重,组合构造出强分类器。算法的伪代码如下:

        

     

       文章的优点:使用co-training半监督的方法,很好的结合了labeled和unlabeled样本,克服了on-line算法的漂移的问题。

                   缺点:推导较为复杂不易传播推广;以前十帧作为训练样本,不知道这是不是他的算法比别人的好的原因。

    展开全文
  • Deferred Shading in Flash with Stage3D

    千次阅读 2013-03-14 21:26:46
    不同就在于最后一个参数colorOutputIndex,其就是用来设置render texture 在MRT中对应的颜色输出通道(这里可用的通道数量与d3d或ogl中得到的相同,也即硬件的支持数量)。 在具有MRT支持的同时还提供了对浮点...

    前不久得到了Flash Player 11.6的beta版本,里边增加了不少新的特性,比如对MRT的支持就很不错。有了MRT最直接的好处就可以在Stage3D上实现很流行的Deferred Shading。前不久做了些尝试,最终还是实现了,效果还不错。

    设置MRT的设备相关函数为:

    Context3D.setRenderToTexture(texture:TextureBase, enableDepthAndStencil:Boolean=false, antiAlias:int=0, surfaceSelector:int=0, colorOutputIndex:int=0):void

    不同就在于最后一个参数colorOutputIndex,其就是用来设置render texture 在MRT中对应的颜色输出通道(这里可用的通道数量与d3d或ogl中得到的相同,也即硬件的支持数量)。

    在具有MRT支持的同时还提供了对浮点纹理的支持,要不也无法使用MRT得到相应的G-Buffer。创建Float格式的纹理只需要使用

    Context3DTextureFormat.RGBA_FLOAT

    来作为纹理的格式描述即可(或者RGBA_HALF_FLOAT),在两个浮点纹理中具体G-Buffer的存储与压缩就可以根据具体情况适宜操作即可。

    最后实现的效果大体如下:


    这里有一些使用MRT相关的注意细节:

    1. 需要使用AGALMiniAssembler.assemble2来组装shader;
    2. 需要Stage3D requestContext3D时使用BASELINE_EXTENDED属性;
    3. 在使用setRenderToTexture设置相应的render target之后应及时调用setRenderToTexture(null, ..., 1)来关闭相应的MRT输出,并及时设置输出至backBuffer;
    4. 对于RGBA_Float格式的贴图只能在shader中进行访问,否则默认用传统管线使用时仍然会被处理为bitmap格式的纹理,导致渲染不正确;
    5. beta版本中还不能对相应的RenderTarget设置相应关联的depthStencil Buffer;
    6. 对于在Stage3D中传入设置的纹理,必须在AGAL shader中有读取访问,否则会导致最终的渲染结果(后续shader)不正确;
    7. 在渲染完成后应使用setTextureAt(index, null)来进行纹理通道的重置;
    不过,目前的beta版本中依然存在不少的bug和坑,相信不久修正的正式版本很快就会发布。
    展开全文
  • 摘要在多类别图像分割标记领域表现最优的技术采用的都是定义在像素或者图像域之上的条件随机场。虽然区域级的模型通常具有稠密二元连通性,但由于考虑到像素级模型相当的大所以只可以使用稀疏的图结构。在这篇论文...

    摘要

    在多类别图像分割和标记领域表现最优的技术采用的都是定义在像素或者图像域之上的条件随机场。虽然区域级的模型通常具有稠密二元连通性,但由于考虑到像素级模型相当的大所以只可以使用稀疏的图结构。在这篇论文中,我们考虑定义在一张图像中的完全像素集的全连接CRFs模型。这种结果图有几十亿条边,使得传统的判别算法变得不再合适。我们主要的贡献就是提出一种全连接CRF模型的近似判别算法,在这一模型中二元的边缘势函数被定义为两个高斯核的线性组合。我们的实验也证明在像素级上的稠密连通性实质上提升了分割以及标记的准确性。

    介绍

    在计算机视觉领域,多类分割和标记是最具有挑战性和被广泛研究的问题之一。其目标是使用几个已经确定好的物体种类之一来标记图中的每一个像素,因此同时实现识别与多类别分割。一般的方式是将这一问题转换成在定义于像素或图像块上的条件随机场做最大后验概率推断[8,12,18,19,9]。CRF势函数合并了在相似像素中最大化标签一致性的平滑项,并且可以整合建模各类别间上下文关系的更加复杂的项。
    基本的CRF模型由单独的像素或图像块上的一元势函数和在相邻像素和图像块上的二元势函数组成[19,23,7,5]。所产生的邻接CRF结构在模拟图像中长程连接的能力有限并且通常导致物体边界过度平滑。为了改善分割和标记准确性,研究者已经将基础的CRF框架扩充到包含分层联通性和定义在图像域上的高阶势函数[8,12,9,13]。然而这些方法的准确性必定被用来计算模型处理区域的非监督的图像分割的准确性所约束。尽管很多有效的工作都做了,但这种约束限制了基于区域的方法在复杂物体边界周围产生准确标签对应的能力[9,13,14]。
    在这篇论文中,我们探索了一种准确语义分割和标记的与众不同的模型架构。我们在图像中所有像素的组合上使用建立二元势函数的全连接CRF。全连接CRFs在过去就被使用在语义图像标记[18,22,6,17],但在全连接模型上推断的复杂性已经限制了它们在上百或更少的图像域集合上的应用。这些方法达到的分割准确性再一次被产生区域的非监督分割所限制。相反,我们的模型与图像中所有单个像素的组合相关联,能够极大的改进分割和标记。这个模型的主要挑战是尺寸,即使在低分辨率的图像上它都包含了成百上千的节点和数十亿的边。
    我们的主要贡献就是针对任意一张图像中全连接CRF模型的高有效推断算法,在这一模型中二元势函数被定义高斯核的线性组合。这个算法基于一种对CRF分布的平均场近似。这种近似可以通过一系列的消息传递步骤来不断优化。每个步骤通过搜集从所有其他变量得到的信息来更新一个单独的变量。我们发现在全连接CRF中的所有变量的一个平均场更新能够使用在特征空间中的高斯滤波来完成。这就允许我们在大量变量中通过使用有效的近似高维滤波来降低从二次到线性消息传递的计算复杂度[16,2,1]。由此而产生的近似推断算法在模型中大量的边缘中是亚线性的。
    Figure 1展示了提出的算法在MSRC-21数据集里的两张图像中对于多类分割和标记的表现。Figure 1(d)展示了在这些图片上使用全连接CRFs中的近似MCMC推断的结果[17]。MCMC过程运行了36小时并且底部图像只有部分收敛。我们也试验了在全连接模型中使用图割推断[11],但是在72小时内都没有收敛。相反,如Figure 1(e)所示,我们算法的一种单线程的实现在0.2秒内产生了一个细致的像素级标记。在MSRC-21和PASCAL VOC2010数据集上的定量估计在Section6提供。据我们所知,我们是第一个在像素级别上实现全连接CRF模型中的有效推断。
    这里写图片描述

    全连接CRF模型

    这里写图片描述这里写图片描述这里写图片描述这里写图片描述

    在全连接CRFs上的有效推断

    我们的算法是基于一个针对CRF分布的平均场近似。这种近似法为近似推断产生了一个迭代的消息传递。我们重要的观察结果是在我们提出的模型中的消息传递可以用特征空间的高斯滤波进行。这就使得我们可以利用高有效的近似法来进行高维滤波,这样也减少了从二次到线性的消息传递的复杂性,由此得出了全连接CRFs的一个近似推断算法,这个算法在变量N中是线性的并且在模型的边缘数中是亚线性的。
    1、平均场近似
    这里写图片描述KL–散度
    在补充材料中给出了上述等式的详细推导。这个更新等式引出了以下推理算法:
    这里写图片描述
    算法1中的每次迭代都执行了一个消息传递步骤,一个兼容性转换,和一个局部更新。兼容性转换和局部更新在线性时间内运行并且都是高效的。计算的瓶颈在于消息传递。对于每个变量,这一步需要计算所有其他变量的和,因此,一个简单的实现在变量N的数目上具有二次复杂度。接下来,我们将展示如何使用近似高维滤波来减少消息传递到线性的计算开销。
    2、 使用高维滤波的有效消息传递
    这里写图片描述这里写图片描述这里写图片描述这里写图片描述这里写图片描述这里写图片描述

    学习

    这里写图片描述这里写图片描述这里写图片描述

    实现

    在我们实现方法中使用的一元势函数源于TextonBoost[19,13].我们使用Shotton[19]等人建议的17维滤波器组并且遵循Ladicky[13]的工作加入了颜色和HOG以及像素位置特征。对于一元势函数我们在MSRC-21数据集上的估计使用了TextBoost的扩展版本。对于VOC2010数据集我们包含了每个物体类别的bounding box物体检测器的响应作为20个额外的特征。这使得VOC2010的一元分类器的性能从13%增加到了22%。我们在强化分类器响应上通过训练一个逻辑回归分类器增加了额外的5%的性能。
    这里写图片描述

    评估

    对于多类图像分割和标记我们在两个标准基准上评价提出的算法。第一个是MSRC-21数据集,这个数据集包含21个类别的具有相应ground truth标签的591幅尺寸为320×213的彩色图像。第二个是PASCAL VOC 2010数据集,这个数据集包含20个类别和一个背景类的尺寸接近500×400的1928幅彩色图像。使用公开的参数配置,将所提出的的方法与Shotten等人提出的邻接CRF和Kohli等人提出的鲁棒 CRF一同评价。为了保证一个公正的评判。所有的模型都使用了Section 5所述的一元势函数。所有的实验都是在一个2.80GHz的Intel i7-930处理器上完成。对于训练使用8个CPU核心;所有其他的实验都是在一个核心上完成。推断算法在一个单独的CPU进程中完成。
    其他评估内容见原论文
    原论文网址:https://arxiv.org/pdf/1210.5644.pdf

    展开全文
  • 论文阅读学习 - CTPN-Detecting Text in Natural Image with Connectionist Text Proposal Network [Paper] [Code-Caffe] [Online Demo] 主要是基于 Faster R-CNN. 根据文字检测场景的特点(水平排列),改进 ...
  • opencv 颜色空间转换 以及cv2.cvtColor(),cv2.inRange()

    万次阅读 多人点赞 2018-08-22 16:27:31
    内容来自OpenCV-Python Tutorials 自己翻译整理 目标 学习如何将RGB转换为灰度图,或者RGB转换为HSV ...学习函数cv2.cvtColor(),cv2.inRange() 转换颜色空间 在opencv中有超过150种颜色空间转换方法(震惊-_-)...
  • 一、数据准备 二、划分训练集-测试集 ... 颜色直方图(Color Histograms) 方向梯度直方图(Histograms of Oriented Gredient,HOG) 局部二值模式(Local Binary Pattern,LBP) 四、分类算法 逻辑回归 ...
  • Color in Computer Vision Color Naming Color names are linguistic labels that humans attach to colors. We use them routinely and seemingly without effort to describe the world around us. They hav
  • VC++6.0中改变窗口背景颜色和控件背景颜色 1.改变对话框的背景色在C…App类中的InitInstance()里添加 SetDialogBkColor(RGB(0,192,0),RGB(0,0,0));2.如果想改变静态文本或单选按钮的背景色可以用你说的那个获得控件...
  • /* Images are created with UIImageRenderingModeAutomatic by default. An image with this mode is interpreted as a template image or an original image based on the context in which it is rendered. For e
  • 在vim打开配置文件或者源代码文件时,文件中注释是深蓝色,终端的黑色背景色对比度很低,经常出现看不清楚的情况。用ls命令查看目录的内容时,目录名称显示的也是深蓝色,看的令人演化,有点致盲的感觉。那就修...
  • 我们在SSH架构中写代码最容易出先的问题之一便是: org.apache.jasper.JasperException: Error creating bean with name indexall defined in file [E:/eclipse/Tomcat 5.5/webapps/f
  • 2、Work with Colors使用颜色 You can assign a color to an individual object in a drawing using its Color or ColorIndex property. The ColorIndex p
  • 一、颜色空间转换 OpenCV有150中颜色空间转换方法,可以使用以下方式查看所有颜色空间转换方法 str.startswith()函数:用于判断一个字符...flags = [i for i in dir(cv2) if i.startswith('COLOR_')] print(flags...
  • Opencv颜色空间转换---BGRHSV详解

    千次阅读 2019-09-11 15:30:38
    BGRHSV之间的转换 BGR转HSV HSV转BGR OpenCV中的实现 相关函数说明 BGR2HSV HSV2BGR 实例说明 代码 参考资料 色彩空间简介 色彩是人的眼睛对于不同频率的光线的不同感受,色彩既是客观存在的(不同频率...
  • VOC Segmentation GT图像颜色表生成分析

    千次阅读 2016-08-11 19:55:12
    VOC Segmentation GT图像颜色表生成分析
  • html输入框文字颜色_HTML5颜色输入

    千次阅读 2020-08-20 03:15:42
    html输入框文字颜色Currently supported in all modern browsers with the exception of Safari and Internet Explorer, the potential of the color HTML5 input is great, allowing the user to make any color ...
  • 使用Python进行OpenCV颜色检测过滤

    万次阅读 多人点赞 2019-04-15 23:06:56
    OpenCV颜色检测过滤是启动OpenCV Python开发的绝佳场所。在本文中,我将介绍一个基本的Python程序,以便开始使用OpenCV。该程序将允许用户尝试颜色过滤检测例程。本文标志着我开始创建对象检测机器人的开始。 ...
  • 打印PPT的技巧就是一面纸张上打印2x3页PPT,同时这也导致每一页PPT内容较小,因此就需要每页PPT的字体样式为正规样式(如:微软雅黑)、大小尽量要大(如:字号24)、颜色要深(如:黑色),这样能保证我们看得清每...
  • python颜色设置

    千次阅读 2018-08-15 12:44:51
    Python文本颜色设置 1、参考链接: http://stackoverflow.com/questions/22886353/printing-colors-in-python-terminal http://stackoverflow.com/questions/287871/print-in-terminal-with-colors-using-python ...
  • LeetCode 75 Sort Colors(颜色排序)

    千次阅读 2016-03-01 22:37:04
    翻译给定一个包含红色、白色、蓝色这三个颜色对象的数组,对它们进行排序以使相同的颜色变成相邻的,其顺序是红色、白色、蓝色。在这里,我们将使用数字0、12分别来代表红色、白色蓝色。原文Given an array with...
  • 原文地址:https://www.learnopencv.com/invisibility-cloak-using-color-detection-and-segmentation-with-opencv/ 开源代码:https://github.com/spmallick/learnopencv/tree/master/InvisibilityCloak 如果你是...
  • 因为Search Bar的游标颜色和Tint颜色是统一的,如果要想将游标的颜色设置为其他颜色,则需要到textfiled内部去修改,对于字体也是同样。 实现代码: - (void)setSearchBarTextfiled:(UISearchBar *)searchBar{ ...
  • 至于这句在什么地方,当然是随你心情了,只要在其显示之前添加,都是OK的 方法3: 私有API( 注意这种方式不能上appstore的,会因为调用私有api被苹果拒的 ) 从 iOS-Runtime-Headers中UIAlertAction头文件 我们...
  • Python+matplotlib绘制不同大小和颜色散点图实例这篇文章主要介绍了Python+matplotlib绘制不同大小和颜色散点图实例,matplotlib的用法是比较多种多样的,下面一起看看其中的一个实例吧具有不同标记颜色和大小的散点...
  • 也许你希望在终端上输出一些带有颜色或者粗体、下划线等样式的信息,就像man中的那样,那么这篇文章将会起到些许作用。事件起因在Python开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的...
  • Given an array with n objects colored red, white or blue, sort them so that objects of the same color are adjacent, with the colors in the order red, white and blue. Here, we will use the ...
  • 电阻阻值电阻颜色的关系

    千次阅读 2013-10-23 00:40:26
    What is Resistor Color code?...Resistor color code is a system of color code which is imprinted physically in resistors ; used to indicate the values and specifications of the resistor. A four or fi
  • OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式。...1. RGBA颜色RGBA模式中,每一个像素会保存以下数据:R值(红色分量)、G值(绿色分量)、B值(蓝色分量)A值(alpha分量)。其中红、绿、蓝...
  • 用MFC设计界面程序,界面风格色彩比较单一,因为修改控件的字体背景颜色都是一件麻烦的事。但是MFC作为C++的封装类,在计算方面有优势。 最近用MFC在开发一个采集下位机运行参数的上位机程序,对于报警故障...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 110,966
精华内容 44,386
关键字:

with和in加颜色