iam通过图像亮度检查来理解图像,我试图通过下面的代码找到图像的亮度 def brightness( im_file ): im = Image.open(im_file) stat = ImageStat.Stat(im) r,g,b = stat.rms return math.sqrt(0.241*(r**2) + 0.691*(g**2) + 0.068*(b**2)) 想了解我如何获得整个图像来计算每个像素或其中一组的亮度,这类似于此处实现的内容, 实现的错误 import cv2 import numpy as np im = cv2.imread('image.jpeg') lum = cv2.imread('image.jpeg',cv2.IMREAD_GRAYSCALE) gradX = cv2.Sobel(lum,cv2.CV_64F,1,0,ksize=5) gradY = cv2.Sobel(lum,cv2.CV_
以下是关于 luminance 的编程技术问答
我想称量亮度值. 示例: 我有一个亮度值的向量: vector lum {50,100,150,200,250); 我有一个系数的向量: vector coef {5.1 , 2.55 , 1.7 , 1.275, 1.02 } 我创建一个空图像: Mat1 m(15): 因此,我的第一个亮度值为50(lum [0] = 50),我希望将其应用于我矩阵的第一个像素的5.1(Coef [0] = 5.1).为此,我需要将第六像素与亮度的第一个和第二个值一起加权.就我而言,我的第六像素的亮度为95,因为(0.1*50)+(0.9*100)= 95 目前,对于第二个系数(COEF [1] = 2.55),我在上一个计算上使用了0.9 on 2.55.它在此系数上保持1,65,因此第7像素将具有100个亮度,第8像素将具有(0.65*100)+(0.35*150)= 117,5. 等等... 实际上我有: /
我正在尝试制作一个应用程序,我必须像此应用程序一样计算相机的亮度: http://itunes.apple.com/us/app/megaman-luxmeter/id4555660266?mt = 8 我找到了此文档: http://b2cloud.com . ,但我不知道如何将其直接适应相机而不是图像.这是我的代码: Image = [[UIImagePickerController alloc] init]; Image.delegate = self; Image.sourceType = UIImagePickerControllerCameraCaptureModeVideo; Image.showsCameraControls = NO; [Image setWantsFullScreenLayout:YES]; Image.view.bounds = CGRectMake (0, 0, 320, 480);
我使用MATLAB进行一系列实验,在这些实验中,每只眼睛都会被图像(双眼竞争)不同的动机刺激,就像一个是瓶子一样,另一个是手表. 有一个工具箱可以调整亮度和空间频率(Shine Toolbox),但对于背景是透明的图像不起作用,例如.png/.tif/.bmp等包括在分析和匹配程序中,以使图像中心的对象仍然不完美匹配. MATLAB(或GIMP)中是否有一种直接的方法与一组灰度图像中的三个数量(亮度,亮度,对比度)匹配? 在GIMP中,我试图通过"级别"进行操作,但是由于结果令人信服,因为每个图像的直方图都非常不同.是否可以根据可以将所有其他图像匹配以使它们相同的三个数量来设置预定义的模板直方图? 预先感谢! 达利博尔 解决方案 在MATLAB中,如果您只想匹配图像的非透明部分,则可以将非透明部分提取到1D图像中,将其传递到工具箱功能,然后重新转换图像返回其原始形状. 说您有一个带有RGBA信息的图像,其中A = 1完全不透明.然后,您可以像这样改变图像:
我想将一些颜色值从Well Weark HSL转换为鲜为人知的HSLUM如何做? hsl(0, 1.0, 0.5) - rgb red is hslum(0, 1.0., 0.54) hsl(120, 1.0, 0.5 - rgb green is hslum(0, 1.0, 0.80) hsl(240, 1.0, 0.5) - rgb blue is hslum(0, 1.0, 0.44) 据我所知,以这种方式计算出亮度(不是轻度): Y = 0.2126 * R + 0.7152 * G + 0.0722 * B 我阅读了一些文章: luma , munsell"> munsell"> 但找不到解决方案? 我知道Cielab 1976公式靠近 munsell "> munsell : : 1.16*(Y/Ymax)^1.16*(Y/Ymax)^(1.0/3.0)-0.16 where Y/Ymax > 0.01 或更好的插值/ 1.16*
这似乎是我想做的一件非常简单的事情,但是Google搜索并没有完全响起我想要的东西,我想正确地做到这一点. 本质上,我需要亮度匹配两个BMP.它们是简单的圆圈(125x125像素),它们的原始颜色只能通过其(0-255范围)的RGB值255,0,0对我来说才知道.我需要找到这些圆圈相同亮度的灰色值. 我见过的所有其他亮度/亮度匹配的教程都是用于包括图片的图片,各种色调,亮度等.我不确定这些技术是否会在此(公认更简单)的情况下起作用. 我希望能够弄清楚RGB值,以便我可以将它们输入实验构建器程序,但是如果需要或会有所帮助,我确实可以访问GIMP. 我为这个可能简单的问题表示歉意,但我对图形,亮度措施等知之甚少.感谢您提供的任何帮助. 附录:我实际上认为这将是一个提出另一个问题的好地方.是否有将Candela转换为(可能?)RGB值的公式?我将这些颜色值宽松地从Candela值中脱颖而出,并且很想知道是否存在将两者等同于猜测的方程式/方式. 解决方案 您需要
根据 http://wwww.workwith.workwith.workwithcolor.com/color-luminance-2233. htm ,红色(#ff0000)具有亮度:54%.浅粉红色(#FF8080)具有亮度:89%.我们的设计师喜欢它,但是如何确定?在这里尝试: 01.htm 我尝试使用由W3C出版的相对亮度公式,尽管范围是[ 0,1],红色为0.21,白色为1.00. 我在想,也许Workscolor所做的工作首先将颜色掩盖为灰度,并阅读灰色的亮度.我尝试过,但仍然没有给出相同的结果. 我已经尝试过了: 解决方案 在此处检查公式: 公式以确定RGB颜色的亮度 Luminance (standard, objective): (0.2126*R) + (0.7152*G) + (0.0722*B) put r = 255,g = b = 0,您将获得54 编辑: 对于相对亮度,除以最大值(255) 您得到21% 对于白色,
我正在使用 C++ 中的 OpenCV 在 iOS 上进行图像处理.有时环境光不够,图像无法正确处理.我没有找到任何合适的方法来检测环境光,因此尝试检测图像的亮度. 此答案建议使用 YUV 格式的亮度值或 Y.所以我按照 this answer 将图像转换为 YUV 格式后从 Mat 图像中访问像素信息. - (void)processImage:(Mat&)image { Mat frame_yuv; cvtColor( image, frame_yuv, CV_BGR2YUV ); uint8_t* pixelPtr = (uint8_t*)frame_yuv.data; int cn = frame_yuv.channels(); for(int i = 0; i