C盘变红了如何清理win7:为什么整个画面都变红了 (images of turning red)

关于C盘变红了如何清理win7的问题,在images of turning red中经常遇到, 我们一直在尝试修复这个程序几个小时,但似乎没有任何工作,我们只是无法弄清楚问题是什么。除了红色像素之外,它应该使整个图片为黑白。(https://imgur.com/a/gxRm3N1之后应该是这样)

我们一直在尝试修复这个程序几个小时,但似乎没有任何工作,我们只是无法弄清楚问题是什么。除了红色像素之外,它应该使整个图片为黑白。(https://imgur.com/a/gxRm3N1之后应该是这样)

这是使用该程序后的结果,整个图片变红了:

https://imgur.com/a/yWYVoIx

我怎样才能解决这个问题?

from image_helper import *
img = load_rgb_image("ara.jpg")
w, h = img.size
pixels = load_rgb_pixels("ara.jpg")
#img.show()
for i in range(w*h):
    r,g,b = pixels[i]
    new_r = 2*r
    new_g = g // 2
    new_b = b + 10
    pixels[i] = (new_r, new_g, new_b)
         
new_img = new_rgb_image(w, h, pixels)                    
new_img.show()
0

在 MATLAB 中实现了一个excellent solution

我很想把代码从 MATLAB 翻译成 Python(使用 OpenCV)。

将图像转换为HSV color space

选择“非红色”像素。在 HSV 颜色空间中,第一个通道是色调-对于被认为是红色的像素,有一系列色调。

将所选像素饱和度通道设置为 0。(饱和度为零的像素为灰色)。

将图像从 HSV 转换回 BGR 颜色空间。

这是 Python 代码(原始 MATLAB 代码的对话):

import cv2
# The following code is a Python conversion to the following MATLAB code:
# Original MATLAB code: https://stackoverflow.com/questions/4063965/how-can-i-convert-an-rgb-image-to-grayscale-but-keep-one-color
img = cv2.imread('roses.jpg')  # Load image.
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)  # Convert the image to HSV color space.
h = hsv[:, :, 0]  # Note: in OpenCV hue range is [0,179]) The original MATLAB code is 360.*hsvImage(:, :, 1), when hue range is [0, 1].
s = hsv[:, :, 1]  # Get the saturation plane.
non_red_idx = (h > 20//2) & (h < 340//2)  # Select "non-red" pixels (divide the original MATLAB values by 2 due to the range differences).
s[non_red_idx] = 0   # Set the selected pixel saturations to 0.
hsv[:, :, 1] = s  # Update the saturation plane.
new_img = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)  # Convert the image back to BGR space
# Show images for testing:
cv2.imshow('img', img)
cv2.imshow('new_img', new_img)
cv2.waitKey()
cv2.destroyAllWindows()
cv2.imwrite('new_img.jpg', new_img)

Result:
enter image description here

笔记:

有关用于选择颜色范围的方法,请参阅original post

参考文章有一个更简单的解决方案,使用简单的 for 循环(具有较差的结果),更类似于您的代码。
考虑使用此代码作为参考。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(979)
Cacheline大小:如何使用cacheline原子在CPU之间复制多个数据元素
上一篇
Cscx的不定积分是多少:Mathematica中的定积分与不定积分的区别
下一篇

相关推荐

  • css 图片缩放:Unlock the Power of CSS Image Scaling

    CSS 图片缩放是指使用 CSS 来改变图片的大小。它可以通过设置图片的宽度和高度来实现,也可以通过设置图片的缩放比例来实现。代码示例:…

    2023-09-12 07:54:54
    0 88 13
  • css 图片旋转动画:Unlock the Power of CSS Image Rotations!

    示例示例CSS 图片旋转动画可以使用 CSS3 的 `` 属性来实现,具体代码如下:上面的代码中,`.rotate` 是一个 CSS 类,可以应用到图片上,`` 属性指定了动画的名称、持续时间和动画曲线,`@` 定义了动画的关键帧,`` 属性指定了旋转的角度。…

    2023-05-26 00:21:24
    0 14 51
  • cvpr论文格式:A Study of Image Classification Using Deep Convolutiona

    CVPR论文格式是一种用于准备有关计算机视觉和图像处理的学术论文的格式。它是由IEEE Computer Society推出的,旨在使论文准备过程更加高效和简便。CVPR论文格式要求论文应该以双栏形式排版,字体为10磅Times New Roman或11磅Computer Modern,行距为单倍行距,页边距为1英寸,段落间距为半行。此外,论文中的图片、表格和公式也应遵循特定的格式。…

    2023-01-28 11:26:31
    0 81 97
  • css调整图片大小:How to Resize Images with CSS

    使用css调整图片大小,需要使用width和height属性,具体代码如下:上面的代码中,width属性指定图片的宽度为200px,height属性指定图片的高度为150px,以此来调整图片的大小。…

    2023-01-03 08:33:41
    0 15 26
  • css 背景图片:Unlock the Power of Creative Imagery

    示例示例CSS 背景图片是使用 CSS 属性来设置背景图片的一种方式。它可以帮助我们为网页元素添加背景图片,从而使网页更加美观。代码示例:…

    2023-06-10 13:04:23
    0 82 25
  • 有没有自动打卡签到的小程序:有没有办法用魔杖使用ImageMagick的小插图功能

    关于有没有自动打卡签到的小程序的问题,在wand oops中经常遇到,我一直在寻找一种将 ImageMagick 的vignette functionality与Wand一起使用的方法,但是在 Wand 的文档中找不到该怎么做。…

    2022-12-19 09:16:59
    0 67 50
  • 怎么培养编程思维:在培养皿上计数菌落(imagej colony counter)

    关于怎么培养编程思维的问题,在imagej colony counter中经常遇到,我有一堆皮氏培养皿充满了点,我想在 Matlab 中计数。…

    2022-12-07 07:44:31
    0 20 84
  • Cpu使用率高有什么影响:随机高 CPU使用率(windows image acquisition high cpu)

    关于Cpu使用率高有什么影响的问题,在windows image acquisition high cpu中经常遇到,我注意到 Visual Studio Code 随机地具有非常高的 CPU 使用率。通常,这似乎与我有一个 SQL 服务器项目的窗口有关。下面是code--status当这最近发生时的输出。对这里可能发生的事情有什么见解?…

    2022-12-14 04:08:37
    0 66 31

发表评论

登录 后才能评论

评论列表(6条)