如何在Go编程语言中读取颜色.png文件,并将其输出为8位灰度图像?
我使用RGB转换RGB和CMYK TIFF图像为RGB JPEG
convert a.tif -colorspace rgb a.jpg
Run Code Online (Sandbox Code Playgroud)
如果TIFF图像仅包含灰色像素,则生成的JPEG的颜色空间为灰色,而不是RGB.
如何强制ImageMagick始终使用RGB?
我遇到的问题是在打印页面上正确地将Firefox的过滤器css属性设置为灰度.出于某种原因,灰度图像在打印输出上不可见,尽管它在屏幕上显示为预期的.在提到像这样的问题后,我已经达到了这一点(简化以证明问题):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
<style type="text/css">
.grayscale {
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 10+ */
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */
filter: grayscale(100%);
}
img {
width:100px;
}
</style>
</head>
<body>
<img class="grayscale" src="http://alltheragefaces.com/img/faces/png/rage-nuclear.png" />
<img src="http://alltheragefaces.com/img/faces/png/rage-nuclear.png" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是 …
我有一个QImage,我需要将其转换为灰度,然后用颜色绘制它.我发现了一个allGray()和isGrayScale()函数检查图像已经灰度,但没有toGrayScale()或类似命名的功能.
现在我正在使用这段代码,但它没有很好的性能:
for (int ii = 0; ii < image.width(); ii++) {
for (int jj = 0; jj < image.height(); jj++) {
int gray = qGray(image.pixel(ii, jj));
image.setPixel(ii, jj, QColor(gray, gray, gray).rgb());
}
}
Run Code Online (Sandbox Code Playgroud)
将QImage转换为灰度的最佳方法是什么?
我正在寻找一个很棒的C++库来进行基本的图像处理.我需要做的是能够将图像转换为灰度,并有权读取图像的像素.
我看过OpenCV,GIL,CImg和Magick ++,但要么它们不是太好,要么我无法弄清楚如何将图像转换为图像灰度.
我有一个喷墨色彩图:
我想知道是否有某种方法可以转换为灰度.我无法使用平均值,因为最大值和最小值会变为相同的灰色.或者,如果有某种方式转换为另一种调色板.
我在Google上找不到转换它的功能.MATLAB使用了一些调用的东西,rgb2ind但我想知道这个公式.
我正在寻找如何使用GDI(而不是GDI +)将32位位图转换为灰度的简单解决方案.是否有可能通过更改位图的托盘或其他东西?
当然Delphi中有很多像这样的例子,但是我正在寻找一个WinAPI函数,它可以在没有迭代的情况下完成这个.
我正在研究医学图像的分割算法,在此过程中,它必须在原始图像上显示不断变化的轮廓.
我正在使用灰度JPEG.为了显示轮廓,我使用drawContours函数,但我无法绘制颜色轮廓.我想在灰度图像上绘制一个红色轮廓,但它只显示为黑色或白色.
这是代码的一部分:
Mat_<uchar> matrix = imread(path,0);
int row = matrix.rows;
int col = matrix.cols;
Mat_<uchar> maskInter(row,col);
for (int i=0; i<row; i++)
for (int j=0; j<col; j++)
{
if ((double)matrix(i,j) <0)
{maskInter(i,j)=255;}
else
{maskInter(i,j)=0;}
};
vector<vector<Point> > contours;
vector<Vec4i> hierarchy;
Mat mat_out = maskInter.clone();
findContours( mat_out, contours, hierarchy, CV_RETR_TREE , CHAIN_APPROX_SIMPLE);
drawContours( img, contours, -1, RGB(255,0,0),1.5,8,hierarchy,2,Point());
namedWindow(title);
moveWindow(title, 100, 100);
imshow(title, img);
waitKey(0);
Run Code Online (Sandbox Code Playgroud)
是否可以在灰度图像上显示颜色轮廓?
谢谢
我BufferedImage使用此代码转换为灰度.我通常得到像素值BufferedImage.getRGB(i,j)和g,R,G和B的每个值.但是如何获得灰度图像中像素的值?
编辑:抱歉,忘了转换.
static BufferedImage toGray(BufferedImage origPic) {
BufferedImage pic = new BufferedImage(origPic.getWidth(), origPic.getHeight(), BufferedImage.TYPE_BYTE_GRAY);
Graphics g = pic.getGraphics();
g.drawImage(origPic, 0, 0, null);
g.dispose();
return pic;
}
Run Code Online (Sandbox Code Playgroud) 我在网站上使用Gray作为一些元素.但是,我无法让它在IE11中运行.例如,在下面的小提琴中,我使用JS来添加grayscale和grayscale-fade类,以便在悬停时图像从颜色渐变为灰度.我如何在IE11中使用它?作者说,插件需要为IE11初始化(即$('article.project img').gray();),但如果我添加该行,所有图像默认从一开始就变为灰色.我只是想在IE11中使用它.有人能告诉我怎么样?
小提琴:http://jsfiddle.net/61jcam54/
HTML
<div id="content">
<article class="project">
<img width="375" height="375" src="http://i.imgur.com/jNkpAg6.gif" alt="image-title">
<div class="overlay" style="margin-left: -1px; width: 367px;">
<h3>Project Title</h3>
<a class="post-link expand" href="http://google.com">+</a>
</div>
</article>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
article.project {
float: left;
margin: 0 1% 2%;
max-width: 375px;
overflow: hidden;
position: relative;
-moz-user-select: none;
-ms-user-select: none;
-webkit-user-select: none;
}
article.project img {
display: block;
margin: 0;
padding: 0;
max-width: 100%;
height: auto;
-webkit-transition: all 0.2s ease;
-moz-transition: all …Run Code Online (Sandbox Code Playgroud)