加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在C#/ .NET中从另一个中减去一个位图?

发布时间:2020-12-15 18:26:00 所属栏目:百科 来源:网络整理
导读:我有两个位图,由不同的算法变体产生.我想通过从另一个中减去一个来创建第三个位图以显示差异. 怎么能在.NET中完成?我查看了Graphics类及其所有选项,包括ImageAttributes类,我有一个预感它涉及颜色矩阵或重映射表功能. 有没有人有一些示例代码的链接,或者可
我有两个位图,由不同的算法变体产生.我想通过从另一个中减去一个来创建第三个位图以显示差异.

怎么能在.NET中完成?我查看了Graphics类及其所有选项,包括ImageAttributes类,我有一个预感它涉及颜色矩阵或重映射表功能.

有没有人有一些示例代码的链接,或者可以指向正确的方向?谷歌搜索没有透露太多,除非我的谷歌今天失败了.

解决方法

真正的问题是,你想表现出什么样的差异?如果您只需要操作RGB颜色值,我认为最好的方法是只扫描两个位图并使用GetPixel比较Color值,并使用SetPixel生成“差异”位图.也许您只想减去这些值并将其用作第三个位图的新Color值.或许你想要计算出光度并使用它.更好的是,如果您有三个用于比较的指标,请将每个指标分配给颜色的R G和B组件.我以前用这种方法进行分形着色.

还有其他方法,但有了这个方法,你只能受到想象力的限制.它可能不是最快的方法,但听起来并不像这种情况需要性能.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读