我正在寻找一种技术,我们可以通过编程方式选择最佳的颜色对比,以应用于不同(不可预测的)背景颜色的HTML元素上的文本.
由于HTML元素将具有不同的颜色,我们正在寻找一种能够确定文本背后内容的颜色的技术,然后调整文本的颜色以使用具有最佳对比度的颜色.
我很确定这不能只是CSS,我已经找了Jquery解决方案,但找不到任何...有人有线索吗?
[更新]: 根据第一个回复,我想我需要改写.想象一下,我建立一个图像共享服务,我希望让人们标签上的图片自己.图片可以是任何颜色.如何为每张不同的图片选择正确的标签颜色?
我有一个脚本,它使用Google Maps API下载一系列相同大小的方形卫星图像并生成PDF.图像需要事先旋转,我已经使用PIL进行了旋转.
我注意到,由于不同的光线和地形条件,一些图像太亮,另一些图像太暗,结果pdf结果有点难看,"在野外"读取条件不太理想(这是偏远的山地自行车,我想要一个特定十字路口的打印缩略图).
(编辑)然后目标是使所有图像最终具有相似的表观亮度和对比度.因此,过于明亮的图像必须变暗,而黑暗的图像则必须变亮.(顺便说一下,我曾经使用过imagemagick autocontrast,或者auto-gamma,或者equalize,或autolevel类似的东西,在医学图像中有趣的结果,但不知道如何在PIL中做任何这些).
转换为灰度后我已经使用了一些图像校正(前一段时间有灰度打印机),但结果也不好.这是我的灰度代码:
#!/usr/bin/python
def myEqualize(im)
im=im.convert('L')
contr = ImageEnhance.Contrast(im)
im = contr.enhance(0.3)
bright = ImageEnhance.Brightness(im)
im = bright.enhance(2)
#im.show()
return im
Run Code Online (Sandbox Code Playgroud)
此代码对每个图像独立工作.我想知道首先分析所有图像然后"标准化"它们的视觉特性(对比度,亮度,伽玛等)会更好.
另外,我认为有必要在图像中进行一些分析(直方图?),以便根据每个图像应用自定义校正,而不是对所有图像进行相等的校正(尽管任何"增强"函数都隐含地考虑初始合同).
有没有人有这样的问题和/或知道用彩色图像(没有灰度)做这个的好方法?
任何帮助将不胜感激,感谢阅读!
python image-processing brightness contrast python-imaging-library
我正在使用OpenCV处理一些图像,我需要执行的第一步是增加彩色图像上的图像对比度.到目前为止我发现的最快的方法是使用这个代码(其中np是numpy导入)来乘以原始的基于C的cv1文档中的建议:
if (self.array_alpha is None):
self.array_alpha = np.array([1.25])
self.array_beta = np.array([-100.0])
# add a beta value to every pixel
cv2.add(new_img, self.array_beta, new_img)
# multiply every pixel value by alpha
cv2.multiply(new_img, self.array_alpha, new_img)
Run Code Online (Sandbox Code Playgroud)
有没有更快的方法在Python中执行此操作?我尝试使用numpy的标量乘法,但性能实际上更糟.我也尝试过使用cv2.convertScaleAbs (OpenCV docs建议使用convertTo,但cv2似乎缺少这个函数的接口)但是再次测试的性能更差.
我正在研究一个图像拼接项目,我理解在处理图像的对比度和亮度方面有不同的方法.我甚至可以在缝合图像之前处理这个问题,但结果并不像我希望的那样一致.所以我的问题是,在拼接发生之后,是否有可能通过任何机会"平衡"或"均衡"彩色图片中的对比度和亮度?
嗨,我想使用邻域像素值增强图像的对比度.
让图像被视为u0.然后我想通过使用公式来增强图像

这里,M1是最小值,M2是邻域像素中u0的最大值,Mg是原始图像的最大灰度值.我手术的邻居是9X9.uN是新生成的图像(对比度增强图像).
我已经尝试了以下代码但不确定我是否正确.
%Generate a contrast enhanced image
tic
clear all; close all;
I = imread('4.jpg');
I = imresize(I,[128 128]);
if size(I,3)== 3
P = rgb2gray(uint8(I));
P = double(P);
elseif size(I,3) == 2
P = 0.5.*(double(I(:,:,1))+double(I(:,:,2)));
else
P = double(I);
end
ssize=9;
mg=max(P(:));
f1 = @(x) min(x(:));
m1 = nlfilter(P,[9 9],f1);
f2 = @(x) max(x(:));
m2 = nlfilter(P,[9 9],f2);
P_op=((P-m1)./(m2-m1)).*mg;
subplot(2,1,1),imagesc(P,[0 255]);colormap(gray);axis off;
subplot(2,1,2),imagesc(P_op,[0 255]);colormap(gray);axis off;
toc
Run Code Online (Sandbox Code Playgroud)
我得到的一些结果如下所示:




任何人都可以检查并告诉我我的代码是否正确?我不太确定自己.还请告诉我是否有更好的方法.先谢谢你们.
编辑问题我重新阅读了工作,我必须将滑动窗口功能应用于几个指定的像素.**
我必须应用的像素在此方法中找到.检测图像的初始轮廓(以红色显示在图像上).然后在指定距离处绘制轮廓周围的带. 滑动窗口功能必须仅应用于原始图像的窄带内的那些像素
我正在给出图像,初始轮廓和乐队图像.




以白色标记的像素是我指定的像素,在该像素上必须应用滑动功能.是否可以根据此类标准应用nfilter?请帮忙.如果我的问题不正确,我会进一步澄清.
matlab image-processing image-enhancement contrast sliding-window
我正在尝试获得一些自动文本识别的经验,我正在使用包tesseract在某些图像上执行ocr(即我拍摄的一些截图).
为了提高我的程序识别下图中价格的性能,我使用magick软件包对图像进行了一些预处理,方法是通过改变亮度和饱和度参数来增加图像的对比度.
但是,我认为通过转换为黑白图像可以进一步提高性能.
如何在R中有效地实现这一目标?
最近我将Chrome更新为v.26,并且使用HTML5画布显示的图片不再可见.正如我发现我不得不改变亮度和对比度.
根据浏览器引擎,CSS过滤器的值如何不同?
默认:
Brightness: 0; contrast 100: Firefox ?
Brightness:100; contrast:100: Chrome ?
Run Code Online (Sandbox Code Playgroud)
我发现它实际上是Chrome的错误修复程序:https: //code.google.com/p/chromium/issues/detail?id = 168004
我正在使用 dummies 包为分类变量生成虚拟变量,其中一些具有两个以上的类别。
testdf<- data.frame(
"A" = as.factor(c(1,2,2,3,3,1)),
"B" = c('A','B','A','B','C','C'),
"C"= c('D','D','E','D','D','E'))
#
#Generate dummy variables:
#
testdf<- cbind(testdf, dummy(testdf$C, sep='_'))
testdf<- cbind(testdf, dummy(testdf$B, sep='_'))
Run Code Online (Sandbox Code Playgroud)
对于这两个命令,我得到:
Run Code Online (Sandbox Code Playgroud)Warning message: In model.matrix.default(~x - 1, model.frame(~x - 1), contrasts = FALSE) : non-list contrasts argument ignored
结果似乎是正确的。您能否就警告的原因提出建议?
给定 HSL 中的某种颜色(假设 hsl(74,64%,59%)),我想计算哪种较暗的阴影(具有相同的 h 和 s 值)可以提供足够的对比度来满足 W3C 颜色对比度要求。
有一些公式可将 HSL 转换为 RGB(例如https://en.wikipedia.org/wiki/HSL_and_HSV#HSL_to_RGB)并计算该 RGB 的相对亮度(例如https://www.w3.org/TR /WCAG20/#relativeluminancedef)。根据颜色对比度公式(https://www.w3.org/TR/WCAG20/#contrast-ratiodef),我可以计算其他颜色的相对亮度应该是多少。
但是,然后我就卡住了。我发现无法从给定的相对亮度计算回具有给定 h 和 s 的 HSL 颜色。
使用https://contrast-ratio.com/等工具,我可以降低亮度直到满足要求,但我想要一个公式(最好在 JavaScript 中)来对大量颜色进行计算。
(我目前正在使用二分搜索方法来查找最接近的值,通过测试从 HSL 到 RGB 到相对亮度的许多转换,但这相当密集,而且我想知道中间到 RGB 的转换是否会引入不准确。)
contrast ×10
brightness ×3
css ×2
opencv ×2
python ×2
r ×2
c# ×1
colors ×1
hsl ×1
image ×1
javascript ×1
matlab ×1
model.matrix ×1
numpy ×1
tesseract ×1