如何用图像中每个像素的颜色绘制图形?

2023-12-08

我正在研究图像颜色识别,因此我将 RGB 图像转换为 Lab,因为它是最接近人类视觉的颜色空间。之后,我获取实验室的 3 个通道中的每一个,并希望在 3D 图形中绘制我在转换图像中识别出的颜色变化。如何使用图像的颜色绘制图形?

import cv2
import numpy as np
import urllib
import mpl_toolkits.mplot3d.axes3d as p3
import matplotlib.pyplot as plt

# Load an image that contains all possible colors.
request = urllib.urlopen('IMD021.png')
image_array = np.asarray(bytearray(request.read()), dtype=np.uint8)
image = cv2.imdecode(image_array, cv2.CV_LOAD_IMAGE_COLOR)

lab_image = cv2.cvtColor(image, cv2.COLOR_BGR2LAB)
l_channel,a_channel,b_channel = cv2.split(lab_image)

fig = plt.figure()
ax = p3.Axes3D(fig)
ax.scatter(l_channel, a_channel, b_channel, marker='o',  facecolors=cv2.cvtColor(image, cv2.COLOR_BGR2RGB).reshape(-1,3)/255.)

ax.set_xlabel('L')
ax.set_ylabel('A')
ax.set_zlabel('B')
fig.add_axes(ax)
#plt.savefig('plot-15.png')
plt.show()

Exit: enter image description here


这里如何获得answer亚历山大建议针对您的情况进行工作:

# only change to question's code is the ax.scatter() line:
ax.scatter(l_channel, a_channel, b_channel, marker='o',
  facecolors=cv2.cvtColor(image, cv2.COLOR_BGR2RGB).reshape(-1,3)/255.)

注:facecolors参数需要 RGB,而不是 OpenCV 的 BGR,并且对颜色数据的形状和类型很挑剔,因此需要重塑和划分。

Here the result when the code is applied to this image:enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何用图像中每个像素的颜色绘制图形? 的相关文章

  • 如何使用 django (python) 和 s3 上传文件?

    我正在寻找一种将文件上传到 s3 的方法 我正在使用 django 我目前正在使用亚马逊的 python 库进行上传以及以下代码 View def submitpicture request fuser request session lo
  • Python 按照层次结构按多个分隔符分割字符串

    我只想根据多个分隔符 例如 and 和 按顺序分割字符串一次 例子 121 34 adsfd gt 121 34 adsfd dsfsd and adfd gt dsfsd adfd dsfsd adfd gt dsfsd adfd dsf
  • turtle.Screen().screensize() 未输出正确的屏幕尺寸[重复]

    这个问题在这里已经有答案了 我编写了一些代码来在屏幕周围随机放置点 但是 它并没有覆盖整个屏幕 import turtle import random t turtle Turtle color red green blue pink ye
  • PyTorch:加速数据加载

    我正在使用 dendnet121 从 Kaggle 数据集进行猫 狗检测 我启用了cuda 看起来训练速度非常快 然而 数据加载 或者可能是处理 似乎非常慢 有一些方法可以加快速度吗 我尝试玩女巫批量大小 但没有提供太多帮助 我还将 num
  • 是否有更矢量化的方法来沿轴执行 numpy.outer ?

    gt gt gt x np array a0 a1 b0 b1 gt gt gt y np array x0 x1 y0 y1 gt gt gt iterable np outer x i y i for i in xrange x sha
  • pandas to_sql sqlalchemy 与 secure_transport 的连接

    我正在尝试将数据发送到具有 require secure transport ON 的服务器上的 mysql 数据库 当我尝试使用以下代码连接到它时 import pandas as pd import pymysql from sqlal
  • Python,多线程,获取网页,下载网页

    我想在一个站点批量下载网页 我的 urls txt 文件中有 5000000 个 url 链接 大约有300M 如何让多线程链接这些网址并下载这些网页 或者如何批量下载这些网页 我的想法 with open urls txt r as f
  • 使用 Python 脚本打开特定文件类型?

    如何使 Python 脚本成为特定文件类型 例如 foo 的默认应用程序 例如 当我双击 Finder Explorer 中的文件时 我希望该文件在 Python 脚本中打开 这可以在 Win 和 或 OS X 中实现吗 如果重要的话 该应
  • 如何测试列表中多个值的成员资格

    我想测试两个或多个值是否在列表中具有成员资格 但我得到了意外的结果 gt gt gt a b in b a foo bar a True 那么 Python 可以同时测试列表中多个值的成员资格吗 这个结果意味着什么 See also How
  • 如何在 Sublime 2 REPL Mac 中运行 Python 3

    我的问题如下 我安装了 sublime 2 和 sublime repl 插件 一切正常 我唯一需要的是更改在控制台内置的 sublimerepl 上运行的 python 版本 我的意思是 我有 python 2 7 5 预先安装了 mav
  • 在python中安装scipy模块时出错

    我正在尝试使用 pip 在 python 中安装 scipy 模块 它显示以下错误 Command c users sony appdata local programs python python35 32 python exe u c
  • Qcut Pandas:ValueError:Bin 边缘必须是唯一的

    我使用 Pandas 中的 Qcut 将数据离散化为大小相等的存储桶 我想要有价格桶 这是我的数据框 productId sell prix categ popularity 11997 16758760 0 28 75 50 524137
  • Python Camelot无边框表格提取问题

    我正在努力从 pdf 文件中提取一些无边框表格 如下图所示 我已经安装了 python camelot 如图所示here https github com socialcopsdev camelot并且仅适用于有边框的表格 请参阅以下详细信
  • 如何限制scrapy请求对象?

    所以我有一个蜘蛛 我认为它正在泄漏内存 结果当我检查 telnet 控制台 gt gt gt prefs 时 它只是从链接丰富的页面中抓取了太多链接 有时它会超过 100 000 个 现在我已经一遍又一遍地浏览文档和谷歌 但我找不到一种方法
  • Scrapy 抓取并跟踪 href 中的链接

    我对 scrapy 很陌生 我需要从 url 的主页跟踪 href 到多个深度 再次在 href 链接内我有多个 href 我需要遵循这些href 直到到达我想要抓取的页面 我的页面的示例 html 是 初始页 div class page
  • 如何保持 python 3 脚本 (Bot) 运行

    不是母语英语 抱歉 英语可能很蹩脚 我也是编程新手 您好 我正在尝试使用 QueryServer 连接到 TeamSpeak 服务器来创建机器人 经过几天的努力 它有效 只有 1 个问题 而我却被这个问题困扰了 如果您需要检查 这是我正在使
  • 更改 DCT 系数

    我决定使用 libjpeg 作为处理 jpeg 文件的主要库 我已阅读 libjpg txt 文件 我很高兴该库允许以方便的方式读取 写入 DCT 系数 由于编写自己的解码器需要很长时间 我的工作与无损嵌入相关 目前我需要从文件中读取 DC
  • 在至少 7 天内连续三天登录该产品的用户

    我有一个用于用户参与的数据框 df 如下所示 time stamp user id 2013 01 01 10 05 23 1 2013 01 03 16 35 23 1 2013 01 06 11 06 35 1 2013 01 10 1
  • 在Python中从CSV文件中获取随机行并找到相应的单词,就像测验一样

    抱歉标题含糊不清 想不出更好的表达方式 我有一个包含德语 英语单词的 CSV 文件 如下所示 Ja Yes Nein No Katze Cat 我希望我的 python 脚本从 CSV 文件中打印一个随机的德语单词 并要求他们输入英语单词
  • 部署 Flask 应用程序时如何检测额外文件的更改并重新加载应用程序? [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我在 Flask 中构建了一个小型 Web 应用程序 并尝试将其部署在 Pythonanywhere 上 在开发过程中

随机推荐

  • 如果我不打算返回任何内容,我应该使用像map和filter这样的数组方法吗?

    去年我一直在使用数组方法 例如map and filter更常见的是代替数组上的标准 for 循环 它感觉更容易阅读和编写 并且可以完成我最有可能要做的所有事情 例如创建局部变量 但很多时候我不会返回任何东西 不过埃斯林特不太喜欢我 据他们
  • 返回传递给函数的所有参数的总和

    一种方法是使用参数 我可以循环参数数组并返回所有传递的参数的总和 function sum var sum 0 for var i 0 i
  • Android Studio 与实验性 gradle 0.2.0

    我正在尝试使用最新版本的 android studio 设置基本的 ndk 构建 试图跟随本教程 这是我的gradle wrapper properties Thu Sep 17 14 22 34 CST 2015 distribution
  • 加入线程:“避免资源死锁”

    我使用一个 C 类来封装升压 asio io service class IoService public static IoService getInstance static IoService instance return inst
  • 从 xstream 反序列化 xml 文件

    我正在使用 Xstream 序列化 Job 对象 看起来工作正常 但反序列化时 我遇到了一个问题 Exception in thread main com thoughtworks xstream io StreamException on
  • 在表视图外部触摸时隐藏 UITableView

    我有一个小UI表格视图加载视图时隐藏 当我点击 SHOW UIButton the UI表格视图可见myTableView hidden NO 我想隐藏UI表格视图当用户触摸其框架之外时 谢谢你的帮助 最佳方法 简单 在显示 UITable
  • 如何一次将多个 csv 文件读入 R 并知道数据来自哪个文件? [复制]

    这个问题在这里已经有答案了 我想将多个 csv 文件读入 R 并将它们组合成一个大表 然而 我需要一列来标识每行来自哪个文件 基本上 文件中的每一行都有一个唯一的标识号 但这些数字在文件之间会重复 因此 如果我将所有文件绑定到一个表中而不知
  • JavaScript 对象属性可以引用同一对象的另一个属性吗? [复制]

    这个问题在这里已经有答案了 我最近尝试创建一个像这样的对象 var carousel slider carousel1 slider panes carousel slider children length 我的目的是通过缓存结果来提高
  • 将自定义订单状态添加到 WooCommerce 管理订单列表中的过滤器菜单

    我目前正在尝试将新的快速过滤器 subsubsub 添加到 WooCommerce 管理订单列表 我有一个名为 wc test accepted 的自定义订单状态 如何将自定义订单状态的新快速过滤器添加到顶部 要在订单状态菜单过滤器中获取与
  • 使用 CSS 将 pre 元素另存为 PDF

    我制造了一个语法荧光笔我想要一个保存为 PDF 的选项 我看过这个问题 但下载它不会保留 CSS 样式 这会破坏下载突出显示文件的意义 有什么办法可以拯救我的pre元素作为 PDF 同时保留 CSS HTML pre highlighted
  • 如何在列表中放置列表项项目符号?

    你会看到我的 HTML 生成的数字 项目符号使左侧的元素看起来很难看 https i stack imgur com nAb8C jpg 我试图在 CSS 中使用边距和填充 但两者都不起作用 帮助 我希望数字显示距图像左侧至少 5 像素 A
  • Woocommerce:用户只能购买一次产品

    我可以在主题的functions php 文件中添加什么 以使用户只能购买产品一次 就像他们以前在商店购买过任何产品一样 他们将无法再次购买 我想代码看起来像这样 伪代码 并且会使用 woocommerce add cart item da
  • JSON 解析错误:意外的标识符“未定义”(React Native)

    我正在尝试使用异步存储来存储两个作为对象存储的文本输入值 并将其传递到不同的视图 在按下按钮时它们将显示在其中 正如其他 StackOverflow 帖子中提到的 我使用 JSON parse 和 JSON stringify 将对象作为
  • Xcode 签名错误无法创建配置文件并且未找到“com.photo.appwall”的配置文件

    我在签署申请时遇到问题 无法创建配置文件 未找到 com photo appwall 的配置文件 该错误消息似乎不言自明 您需要在 Apple 的开发人员门户上注册您的测试设备 登录 Apple 的开发者门户 Click Certifica
  • 如何在 Node.js 中从 URL 进行请求

    是否有标准方法要求 Node 模块位于某个 URL 而不是本地文件系统上 就像是 require http example com nodejsmodules myModule js 目前 我只是将文件提取到临时文件中 并要求这样做 您可以
  • Windows 资源监视器使用哪个 API?

    Windows 资源监视器显示 除其他外 当前哪些进程正在访问磁盘上的哪些文件 它是实时进行的 How 我知道它可能使用 ETW 并且我可以使用 xperf 等工具生成跟踪 但是如何在无需启动 停止和解析跟踪文件的情况下获取实时信息呢 我需
  • 在Android中向多列GridView添加页脚视图?

    是否可以将页脚视图添加到 GridView 具有多列 其行为类似于 ListView 的页脚 那么这个页脚视图 例如分页视图 仅在用户滚动到 GridView 底部时才会出现 并且它具有整个屏幕的宽度 而不仅仅是 1 个网格元素 不 对不起
  • “num - 1”与“num -= 1”

    在第 4 行中 为什么我们必须在 后面添加 num 5 if num gt 2 print num num 1 print num num 1 产生减去 1 的结果num num没有改变 num 1 减一num并存储该结果 相当于num n
  • 小程序无法从 jar 加载类

    一些用户抱怨小程序不再工作 当他们查看 java 控制台时 他们会遇到 java lang noClassDefFoundError 并检查我的访问日志 我发现他们已经下载了包含该类的 jar 文件 然后发出 get对特定类别的请求 不同的
  • 如何用图像中每个像素的颜色绘制图形?

    我正在研究图像颜色识别 因此我将 RGB 图像转换为 Lab 因为它是最接近人类视觉的颜色空间 之后 我获取实验室的 3 个通道中的每一个 并希望在 3D 图形中绘制我在转换图像中识别出的颜色变化 如何使用图像的颜色绘制图形 import