标签: grayscale

Linux命令行实用程序删除PDF文件中的颜色?

我正在寻找一个能够删除PDF中颜色的linux命令行实用程序/脚本.该实用程序的输出应该是相同的PDF,但是以灰度显示.

有谁知道如何做到这一点?

谢谢

pdf colors ghostscript grayscale

1
推荐指数
1
解决办法
1801
查看次数

是否可以在OpenGL ES 1.0中进行去饱和以及如何进行去饱和?

我想渲染一个灰色的颜色纹理.使用着色器在ES 2.0中执行它是件小事,但是可以在ES 1.x中执行吗?

UPDATE

感谢@datenwolf,我这样做:

GLfloat weights_vector[4] = {0.2126, 0.7152, 0.0722, 1.0};
GLfloat additions_vector[4] = {0.5, 0.5, 0.5, 0.0};

glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE);

/* First part */
glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_DOT3_RGB);
glTexEnvi(GL_TEXTURE_ENV, GL_SRC0_RGB, GL_TEXTURE);
glTexEnvi(GL_TEXTURE_ENV, GL_SRC1_RGB, GL_CONSTANT);
glTexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_COLOR, weights_vector);

/* Second part */
glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_ADD);
glTexEnvi(GL_TEXTURE_ENV, GL_SRC0_RGB, GL_PREVIOUS);
glTexEnvi(GL_TEXTURE_ENV, GL_SRC1_RGB, GL_CONSTANT);
glTexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_COLOR, additions_vector);
Run Code Online (Sandbox Code Playgroud)

第一部分渲染得很好,如果我自己留下它,但如果我添加第二部分,它使用"黑色"作为前一种颜色,所以我只得到灰色像素.我在这做错了吗?

第二次更新

如果我尝试使用GL_TEXTURE0而不是GL_PREVIOUS我确实得到相同的结果GL_TEXTURE.但是,如果我使用的话,我GL_TEXTURE1甚至不是灰色像素,而是黑色.我迷路了......

第三次更新

第二部分现在正在运作.应该只是使用@datenwolf建议的以前纹理的名称!

但是,输出仍然不正确,因为它是倒置的.我通过添加:

glTexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_ONE_MINUS_SRC_COLOR);
Run Code Online (Sandbox Code Playgroud)

现在,它太黑了.我无法做对.尝试过但没有用:

  • 将权重乘以2
  • 加0.5
  • 调整整个图像2
  • 将权重乘以2然后减去0.5

第四次更新(抱歉有这么多)

我开始怀疑它是不可能的,因为偏见和乘法DOT3_RGB.在组合器中执行此操作的正确方法是: …

textures opengl-es effects grayscale

1
推荐指数
2
解决办法
2042
查看次数

如何在Core图像中通过CIFilter更改最小值或最大值?

我正在iOS中绘制几个灰度图像.灰度图像的值具有最小值和最大值,即对于范围内的8位值[41,244].

我想改变最小值或最大值.我想知道如何在此列表中设置过滤器以更改最小值以及如何在此列表中设置过滤器以更改最大值?

也许以下绘图会很好看:

[1.读取原始灰度数据] - > [2.创建CGImageRef] - > [3.在GPU中加载参考]

到目前为止,在iOS 6中可以实时应用GPU中的过滤器.操作1或2对我来说非常慢,因为在一秒钟内我应该绘制100张图像.所以我需要在GPU中使用CIFilter.我知道如何过滤图像.但是什么过滤器可以完成我的工作?

一些示例代码对我有好处.

image-processing objective-c grayscale ios6 cifilter

1
推荐指数
1
解决办法
2033
查看次数

如何将图像转换为0-255灰度图像

我想将图像转换为灰度图像,其中像素强度0-255之间.

我能够使用以下Java方法将图像转换为灰度图像.

public void ConvertToGrayScale(BufferedImage bufImage, int ImgWidth, int ImgHeight) {

    for (int w = 0; w < ImgWidth; w++) {
        for (int h = 0; h < ImgHeight; h++) {

            Color color = new Color(bufImage.getRGB(w, h));
            int ColAvgVal = ((color.getRed() + color.getGreen() + color.getBlue()) / 3);
            Color avg = new Color(ColAvgVal, ColAvgVal, ColAvgVal);

            bufImage.setRGB(w, h, avg.getRGB());

            System.out.println(avg.getRGB());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

"的System.out.println(avg.getRGB());" 用于查看像素强度,但所有灰度级都是负值,而不是0-255之间.

我做错了吗?如何将图像转换为像素强度在0-255之间的灰度图像.

谢谢

java image-processing grayscale

1
推荐指数
1
解决办法
3418
查看次数

javafx argb到灰度转换

我知道也有类似的问题,但是那些问题没有回答我的问题。如标题所示,我使用的是JavaFX Image类,而不是bufferedImage。

我以前的答案,这个其他的问题,但得到的图像是空的。

这是我的代码:

public static Image toGrayScale(Image sourceImage) {
    PixelReader pixelReader = sourceImage.getPixelReader();

    int width = (int) sourceImage.getWidth();
    int height = (int) sourceImage.getHeight();

    WritableImage grayImage = new WritableImage(width, height);

    for (int y = 0; y < height; y++) {
        for (int x = 0; x < width; x++) {
            int pixel = pixelReader.getArgb(x, y);

            int red = ((pixel >> 16) & 0xff);
            int green = ((pixel >> 8) & 0xff);
            int blue = (pixel & 0xff); …
Run Code Online (Sandbox Code Playgroud)

javafx grayscale argb

1
推荐指数
1
解决办法
2631
查看次数

如何将回调函数发送回主函数

我有这个小提琴http://jsfiddle.net/jdsans/38GFS/我试图锻炼,但我无法将回调函数的返回发送到主函数.回调函数包含我想要的结束返回值,但它不返回.

当我使用document.write()函数打印返回值时,我得到了我想要的确切值,但正如我之前所说,它不会被返回.

任何人都可以用这个小提琴来向我展示一个有效的例子.我在小提琴中添加了更多细节作为评论,以便您在理解我时没有任何问题.

javascript jquery html5 canvas grayscale

0
推荐指数
1
解决办法
874
查看次数

Android:将灰度转换为二进制图像

我完成了获得灰度值,但我不知道如何使用函数将灰度转换为二进制图像.请帮帮我,这里是我的功能代码:

public Bitmap toBinary(Bitmap bmpOriginal) {
    int width, height, threshold;
    height = bmpOriginal.getHeight();
    width = bmpOriginal.getWidth();
    threshold = 127;
    final Bitmap bmpBinary = null;

    for(int x = 0; x < width; ++x) {
        for(int y = 0; y < height; ++y) {
            // get one pixel color
            int pixel = bmpOriginal.getPixel(x, y);

            //get grayscale value
            int gray = (int)(pixel & 0xFF);

            //get binary value
            if(gray < threshold){
                bmpBinary.setPixel(x, y, 0);
            } else{
                bmpBinary.setPixel(x, y, 255);
            }

        }
    }
    return bmpBinary; …
Run Code Online (Sandbox Code Playgroud)

binary android bitmap grayscale

0
推荐指数
1
解决办法
6463
查看次数

如何在MATLAB中将灰度图像转换为二进制

我必须编写一个程序,将强度图像转换为黑白图像.我只是想我可以从原始矩阵中获取一个值,如果它高于平均值,则使另一个数组中的相应单元格等于1,否则等于零:

for x=1:X
    for y=1:Y
        if I(x,y)>mean(I(:))
            bw(x,y)=1;
        elseif I(x,y)<mean(I(:))
            bw(x,y)=0;
        end
    end
end
image(bw)
Run Code Online (Sandbox Code Playgroud)

不幸的是,我得到的图像都是黑色的.为什么?

我在uint8,顺便说一下.2-Lena.tiff图像

binary matlab image-processing grayscale

0
推荐指数
1
解决办法
2万
查看次数

使用opencv在python中以灰度显示相机供稿

我一直试图以灰度显示来自笔记本电脑网络摄像头的相机提要,并且已经使用以下代码完成了该操作:

    import cv2
    import numpy as np
    clicked = False
    def onMouse(event, x, y, flags, param):
        global clicked
        if event == cv2.cv.CV_EVENT_LBUTTONUP:
            clicked = True

    cv2.namedWindow('image capture', cv2.WINDOW_NORMAL)
    cv2.setMouseCallback('image capture', onMouse)
    #initialize the camera object with VideoCapture
    camera = cv2.VideoCapture(0)
    sucess, frame = camera.read()
    cv2.imwrite('snapshot.png', frame)
    gray = cv2.imread('snapshot.png', cv2.IMREAD_GRAYSCALE)
    while sucess and cv2.waitKey(1) == -1 and not clicked:
        cv2.imwrite('snapshot.png', frame)
        gray = cv2.imread('snapshot.png', cv2.IMREAD_GRAYSCALE)
        cv2.imshow('image capture', gray)
        sucess, frame = camera.read()

    cv2.imwrite('snapshot.png', frame)
    print 'photo taken press any key …
Run Code Online (Sandbox Code Playgroud)

python opencv grayscale

0
推荐指数
1
解决办法
4147
查看次数