当前位置: 首页 > 知识库问答 >
问题:

处理:部分模糊部分背景

寇宏义
2023-03-14

一些背景信息:这个项目是一个简单的图像,在项目结束时,它将成为我电脑屏幕的背景。

我想模糊背景的一部分,这样文本的一部分就更清晰了。我可以模糊图像中文本本身的部分,但这是我最后的选择。我不想这样做,因为在未来的项目中,我想随着一些东西的移动而主动模糊背景(我还没有开始这个未来的项目,所以我无法更好地描述这个项目)。

有人知道如何模糊背景的一部分吗?对于这个项目,它需要大约400x200像素,模糊10%-15%

共有2个答案

孟俊晖
2023-03-14

Michael的回答很好地概括了您所追求的功能。

FWIW这里是示例的修改版本

/**
 * Load and Display 
 * 
 * Images can be loaded and displayed to the screen at their actual size
 * or any other size. 
 */

PImage img;  // Declare variable "a" of type PImage

void setup() {
  size(640, 360);
  // The image file must be in the data folder of the current sketch 
  // to load successfully
  img = loadImage("moonwalk.jpg");  // Load the image into the program  
}

void draw() {
  // take an image subsection
  PImage blurred = img.get(mouseX, mouseY, 210, 210);
  // blur that section
  blurred.filter(BLUR, 8);

  // Displays the image at its actual size at point (0,0)
  image(img, 0, 0);
  // render blurred subsection (in the same spot)
  image(blurred, mouseX, mouseY);
}

裸露在大图像上,模糊量很大,这可能会很慢。

如果你需要一个更快的方法,你可以看看片段着色器,在处理为PShader:例子中实现

邢寒
2023-03-14

这里有一个函数正好可以做到这一点。它是静态方法,引用PApplet,因此如果您在PDE中工作,可以从方法签名中删除此参数。此外,使用此方法可以指定区域的中心,而不是左上角(根据需要进行修改)。

public static void blur(applet p, int regionCentreX, int regionCentreY, int regionWidth, int regionHeight,
        float blurStrength) {

    PGraphics g;
    g = p.createGraphics(regionWidth, regionHeight);
    g.beginDraw();
    g.loadPixels();

    int cornerX = PApplet.constrain(regionCentreX - (regionWidth / 2), 0, p.width - regionWidth);
    int cornerY = PApplet.constrain(regionCentreY - (regionHeight / 2), 0, p.height - regionHeight);

    p.loadPixels();
    int graphicsIndex = 0;
    for (int y = 0; y < regionHeight; y++) {
        for (int x = 0; x < regionWidth; x++) {
            g.pixels[graphicsIndex] = p.pixels[(cornerY + y) * p.width + (cornerX + x)];
            graphicsIndex++;
        }
    }
    p.updatePixels();

    g.updatePixels();
    g.filter(PConstants.BLUR, blurStrength);
    g.endDraw();
    p.image(g, cornerX, cornerY);
}
 类似资料:
  • 如何设置模糊图像的阈值以使数字尽可能清晰? 在之前的一篇文章中,我尝试自适应地对模糊的图像进行阈值化(左),这导致数字失真和断开连接(右): 从那时起,我尝试使用本文中描述的形态学关闭操作来使图像的亮度均匀: 如果我自适应地设置此图像的阈值,则不会得到明显更好的结果。但是,由于亮度大致一致,我现在可以使用普通阈值: 这比以前好多了,但我有两个问题: 我必须手动选择阈值。虽然关闭操作会产生均匀的亮度

  • 主要内容:贪心算法解决部分背包问题在限定条件下,如何从众多物品中选出收益最高的几件物品,这样的问题就称为背包问题。   图 1 背包问题 举个简单的例子,商店的货架上摆放着不同重量和价值的商品,一个小偷在商店行窃,他携带的背包只能装固定重量的商品,选择哪些商品才能获得最大的收益呢?这个问题就属于背包问题,限定条件是背包的承重,最终目标是令背包中存放的物品的总收益最高。 根据不同的限定条件,背包问题还可以有更细致的划分: 0-1 背

  • 本部分就 Ceph 存储集群常见的问题做了归纳和总结,方便运维人员进行故障排除。

  • 问题内容: 在ElasticSearch中,我尝试使用带有模糊性的edge_ngram获得正确的评分。我希望精确匹配具有最高的分数,而子匹配具有较低的分数。以下是我的设置和评分结果。 在执行了名字为“ Michael”的POST之后,我进行了如下查询,并更改了“ Michael”,“ Michae”,“ Micha”,“ Mich”,“ Mic”和“ Mi”。 我的成绩是: 如您所见,得分结果没有

  • 问题内容: 我有一个PHP代码,需要将数据库表数据编码为json。所以我使用了json_encode()。 我使用此处给出的表格-http: //www.geekality.net/2011/08/21/country-names-continent- names-and-iso-3166-codes-for- mysql/ 对于不同的输入,此代码的行为似乎有所不同。 查询- 不返回任何json值

  • 问题内容: 我希望网站上的弹出窗口具有 Vista/7航空玻璃风格的效果,并且它必须是动态的。我很好这不是一个跨浏览器的效果,只要该网站仍然 _适用_于所有现代浏览器。 我的第一次尝试是使用类似 但是,正如我应该预期的那样, 这导致 对话框的 内容 模糊并且背景保持清晰。 有什么方法可以使用CSS来模糊半透明元素的背景而不是其内容? 问题答案: 由于除FF以外,其他浏览器似乎未广泛支持该属性,因此