标签: pixels

更改图片中的随机像素,python

我想编写一个函数,该函数将在这张图片(http://tinypic.com/r/34il9hu/6)的天空中创建一个随机数(在 m 和 n 之间,包括在内)星星。我希望星星应该由单个白色像素或由 4 个相邻白色像素组成的正方形随机组成。我也不想在树枝、月亮或鸟上放置一个“星星”(1 个像素)尽管

我将如何在 python 中做到这一点?任何人都可以帮忙吗?谢谢!

到目前为止我有这个:

到目前为止,我已经开始并提出了这一点,我不知道其中是否正确,或者即使我走在正确的轨道上:

def randomStars(small, large):
   import random
   file = pickAFile()
   pic = makePicture(myPic)
   #x = random.randrange(getWidth(pic))
   #y = random.randrange(getHeight(pic))
   for pixel in pic.getAllPixels():
      if random.random() < 0.25:
         pixel.red = random.randint(256)
         pixel.green = random.randint(256)
         pixel.blue = random.randint(256) 
   show(pic)
Run Code Online (Sandbox Code Playgroud)

我不知道我在做什么:(

python random image pixels

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

如何使用 OpenGL 将像素数组直接绘制到屏幕上?

我想将像素直接写入屏幕(不使用顶点和多边形)。我调查了类似问题的各种答案,最引人注目的是这里这里

我看到有几种方法可以将像素绘制到屏幕上,但它们似乎都是间接的,并且使用了不必要的浮点运算:

  1. GL_POINT为屏幕上的每个像素绘制一个。我试过这个并且它有效,但这似乎是一种在屏幕上绘制像素的低效方法。当我的数据将被转换为像素数据数组时,为什么要以浮点形式写入我的数据。

  2. 创建一个跨越整个屏幕的二维四边形并向其写入纹理。与第一个选项一样,这似乎是将像素放在屏幕上的一种迂回方式。纹理在放到屏幕上之前仍然需要经过光栅化。纹理也必须是方形的,而且大多数屏幕都不是方形的,所以我必须处理这个问题。

如何使用 OpenGL 以最直接、最有效的方式将颜色矩阵(其中pixels[0][0]对应于左上角和pixels[1920][1080]对应于右下角)显示在屏幕上?

直接写入帧缓冲区似乎是最有前途的选择,但我只看到人们使用帧缓冲区进行着色。

opengl graphics drawing image-processing pixels

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

使用 Python 解析像素数据的最有效/最快捷的方法?

我创建了一个简单的 Python 脚本,只要特定程序运行,它就会被激活。该程序将信息发送到屏幕,脚本需要抓取和分析这些信息。

脚本的部分逻辑可以表示如下:

while a certain condition is met:
    function to continuously check pixel information on a fixed area of the screen()
    if pixel data (e.g. RGB) changes:
        do something
    else:
        continues to check
Run Code Online (Sandbox Code Playgroud)

我已经找到了可以做到这一点的东西,但没有我想要的那么快。这是使用具有任意值的 Python 成像库 (PIL) 的解决方案:

import ImageGrab

box = (0,0,100,100) # 100x100 screen area to capture (0x0 is top left corner)
pixel = (60,20) #target pixel coordenates (must be within the box's boundaries)
im = ImageGrab.grab(box) #grabs the image area (aka printscreen) -> source of …
Run Code Online (Sandbox Code Playgroud)

python image-processing pixels python-imaging-library

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

将像素数组转换为C#中的图像

我的intC#程序中有一个像素数组,我想将其转换为图像.问题是我正在将程序的Java源代码转换为等效的C#代码.在java中,行读取将int像素数组显示为image:

Image output = createImage(new MemoryImageSource(width, height, orig, 0, width));
Run Code Online (Sandbox Code Playgroud)

有人能告诉我C#等价吗?

这里的orig是int像素数组.我搜索了Bitmap类并且有一个方法被调用,SetPixel但问题是需要ax,y坐标数.但我的代码中有一个int像素数组.另一个奇怪的事情是我的orig数组有负数,它们远远超过255.在Java中,这是相同的情况(意味着C#和Java中的数组具有相同的值),并且值在Java中正常工作.

但我无法将该行转换为C#.请帮忙.

c# java arrays pixels

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

在Matlab中有效地获取像素坐标

我想在Matlab中创建一个函数,给定一个图像,允许用户通过在图像中单击它来选择像素并返回像素的坐标.理想情况下,人们可以连续点击图像中的几个像素,并且该函数将所有相应的坐标存储在矩阵中.有没有办法在Matlab中做到这一点?

matlab image-processing pixels

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

Android图像表示

我正在尝试访问Android中图像的原始像素数据.
代码看起来像这样:

   Bitmap bitmap =  BitmapFactory.decodeFile("image.png"); 
   // assert valid input
   if ((bitmap.getConfig() == null) || bitmap.getConfig() == Config.ARGB_8888)
      throw new Exception("bad config");

  ByteBuffer buffer = ByteBuffer.allocate(4 * bitmap.getWidth() * bitmap.getHeight());
  bitmap.copyPixelsToBuffer(buffer);        
  return buffer.array();
Run Code Online (Sandbox Code Playgroud)

如何buffer.array()存储线性1D中的像素?

  1. 第一个元素是左上角像素还是左下角像素(或其他东西)?
  2. 行主要(一行一行)或列主要(列后一列)?
  3. 频道订单ARGB还是BGRA?
  4. 每个通道的行主要或列主要分别?
  5. 还有别的

android image pixels

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

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

读取图像像素

是否可以在画布A中读取图像的像素并在画布B上创建像素?我想在Canvas B上创建新像素,只有图像的像素为绿色.例如.如果图像的像素(120,45)为绿色,我需要在(120,45)画布B中创建绿色像素

javascript html5 image pixels

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

如何在java中找到两点之间的每个像素?

你好先生/ mem即时制作桌面应用程序在java Swing for doctor.I想要找到每个像素值不计算在两个点之间.假设我有一个点(100,145)和第二个点是(173,190),我想得到这个之间的像素两点.表示两点之间的(x,y)值的每个像素.那我怎么能这样做?

java image-processing pixels

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

在canvas.drawBitmap中使用dpi而不是像素

我已阅读"屏幕支持API指南"(http://developer.android.com/guide/practices/screens_support.html)以及更多资源,但我无法理解dpi的工作原理.

我正在开发一个游戏,我没有使用任何布局(我将使用canvas.drawbitmap等函数自己绘制).但是当我使用Canvas.Drawbitmap函数时,我需要指定我想要绘制图像的屏幕像素.

所以我现在正在使用固定分辨率(1280x800),我正在使用drawable-nodpi文件夹,如果手机的屏幕更宽或更窄,我会稍后调整画布.问题在于,当分辨率不是原生分辨率(1280x800)时,图像看起来很糟糕.

我该怎么做才能解决这个问题?我在3天内阅读和阅读,但所有解释和示例都与Layouts,Nine Patches等有关.

android canvas dpi pixels

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