博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Win8Metro(C#)数字图像处理--2.33图像非线性变换
阅读量:6438 次
发布时间:2019-06-23

本文共 1445 字,大约阅读时间需要 4 分钟。

原文:



[函数名称]

图像非线性变换函数NonlinearTransformProcess(WriteableBitmap src,int k ) 

[函数代码]        ///         /// Nonlinear transform process.        ///         /// The source image.        /// Param to adjust nonlinear transform, from 0 to 255.        /// 
public static WriteableBitmap NonlinearTransformProcess(WriteableBitmap src,int k )37 { if (src != null) { int w = src.PixelWidth; int h = src.PixelHeight; WriteableBitmap linearImage = new WriteableBitmap(w, h); byte[] temp = src.PixelBuffer.ToArray(); int r = 0, g = 0, b = 0; for (int i = 0; i < temp.Length; i += 4) { b = (int)(k * Math.Log10(1 + temp[i])); g = (int)(k * Math.Log10(1 + temp[i + 1])); r = (int)(k * Math.Log10(1 + temp[i + 2])); temp[i] = (byte)(b > 0 ? (b < 255 ? b : 255) : 0); temp[i + 1] = (byte)(g > 0 ? (g < 255 ? g : 255) : 0); temp[i + 2] = (byte)(r > 0 ? (r < 255 ? r : 255) : 0); } Stream sTemp = linearImage.PixelBuffer.AsStream(); sTemp.Seek(0, SeekOrigin.Begin); sTemp.Write(temp, 0, w * 4 * h); return linearImage; } else { return null; } }
你可能感兴趣的文章
阿里云 APM 解决方案地图
查看>>
中国HBase技术社区第一届MeetUp-HBase2.0研讨圆桌会
查看>>
学渣的模块化之路——50行代码带你手写一个common.js规范
查看>>
python——变量
查看>>
subline上装node.js插件
查看>>
python字符串操作实方法大合集
查看>>
Linux学习(十一):不可忽略的Linux支持的文件系统
查看>>
[转]VC++中操作XML(MFC、SDK)
查看>>
WiFi连接风险造成个人信息外泄 网络安全需加强
查看>>
2017(中国)商博会系列介绍之智能生活展
查看>>
eclipse link方式安装 sts(Spring Tool Suite)
查看>>
数据结构思维 第三章 `ArrayList`
查看>>
CentOS6、7编译安装FFmpeg
查看>>
Android项目实战(二十九):酒店预定日期选择
查看>>
PHP IDE phpstorm 常用快捷键
查看>>
蓝牙的未来怎样发展?
查看>>
AI、新材料、5G、智慧城市,未来的社会场景在高交会提前上演
查看>>
Facebook开发的一种数据查询语言——GraphQL:安全概述和测试技巧
查看>>
ECS主动运维2.0,体验升级,事半功倍
查看>>
vim 学习方法
查看>>