async  void test() {

            Color replaceBlack = Color.FromArgb(224,233,55,6);
Color replaceWhite = Color.FromArgb(224, 233, 222, 222);
// BitmapImage bmpimg = new BitmapImage(); WriteableBitmap source = this.imageSource1.Source as WriteableBitmap; //need make sure the .imageSource1.Source is WriteableBitmap byte[] byteArray = null;
using (Stream stream = source.PixelBuffer.AsStream())
{
long streamLength = stream.Length;
byteArray = new byte[streamLength];
await stream.ReadAsync(byteArray, 0, byteArray.Length);
if (streamLength > 0)
{
for (int i = 0; i < streamLength; i += 4)
{
if (byteArray[i + 3] != 0)
{
int b = Convert.ToInt32(byteArray[i]);
int g = Convert.ToInt32(byteArray[i + 1]);
int r = Convert.ToInt32(byteArray[i + 2]); int rB = ((((b * replaceBlack.B) / 255) + (((255 - b) * replaceWhite.B) / 255)) / 2);
int rG = ((((g * replaceBlack.G) / 255) + (((255 - g) * replaceWhite.G) / 255)) / 2);
int rR = ((((r * replaceBlack.R) / 255) + (((255 - r) * replaceWhite.R) / 255)) / 2); byte blue = Convert.ToByte(rB);
byte green = Convert.ToByte(rG);
byte red = Convert.ToByte(rR); byteArray[i] = blue; // Blue
byteArray[i + 1] = green; // Green
byteArray[i + 2] = red; // Red
}
}
}
}
if (byteArray != null)
{ int lw, lh;
lw = source.PixelWidth;
lh = source.PixelHeight;
WriteableBitmap wbbitmap = new WriteableBitmap(source.PixelWidth, source.PixelHeight);
Stream s = wbbitmap.PixelBuffer.AsStream();
s.Seek(0, SeekOrigin.Begin); s.Write(byteArray, 0, lw * lh * 3);
s.Flush(); this.imageTarget2.Source = null;
this.imageTarget2.Source = wbbitmap; } }

  

uwp 图像处理例子的更多相关文章

  1. 【Win10 UWP】QQ SDK(一):SDK基本使用方法

    每当开发一个应用需要社交分享的应用时,总是心里咯噔一下:到底什么时候分享能加上QQ和微信?除了WP8.0版本的微信SDK,官方似乎从未正面发布过适应时代发展的QQ SDK,就连后台,也没有一个可以创建 ...

  2. “四核”驱动的“三维”导航 -- 淘宝新UI(需求分析篇)

    前言 孔子说:"软件是对客观世界的抽象". 首先声明,这里的"三维导航"和地图没一毛钱关系,"四核驱动"和硬件也没关系,而是为了复杂的应用而 ...

  3. 今天在看UWP蓝牙的例子

    private async void InitializeRfcommServer() { ListenButton.IsEnabled = false; DisconnectButton.IsEna ...

  4. (3两个例子)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练

    从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练 1综述http://www.cnblogs.com/jsxyhelu/p/7907241.html2环境架设http://www.cn ...

  5. UWP蓝牙的例子

    https://answers.microsoft.com/zh-hans/windows/forum/windows_10-networking/%e5%9c%a8win10%e7%8e%af%e5 ...

  6. UWP中的Direct2D

    介绍 DirectX一直是Windows平台中高性能图形的代名词,自Win7开始,微软又推出了Direct2D技术,包装于Direct3D,但专注于2D图形,并且准备取代GDI这样的传统2D图形技术. ...

  7. 【Win10】UAP/UWP/通用 开发之 x:Bind

    [Some information relates to pre-released product which may be substantially modified before it's co ...

  8. 淘宝UWP中的100个为什么

    从淘宝UWP第一版发布到现在,已经有十个月了,期间收到了用户各种各样的反馈,感谢这些用户的反馈,指导我们不断的修正.完善应用.但是也有一部分需求或建议,由于资源或技术的限制,目前确实无法做到,只能对广 ...

  9. UWP控件与DataBind

    在uwp开发中必不可少的一个环节就是各种通用的控件的开发,所以在闲暇时间汇总了一下在uwp开发中控件的几种常用写法,以及属性的几种绑定方式,有可能不全面,请大家多多包涵 :) 1.先从win10新增的 ...

  10. UWP开发:APP之间的数据交互(以微信为例)

    目录 说明 UWP应用唤醒方式 跟微信APP交互数据 APP之间交互数据的前提 说明 我们经常看到,在手机上不需要退到桌面,APP之间就可以相互切换,并且可以传递数据.比如我在使用知乎APP的时候,需 ...

随机推荐

  1. 高性能的Reactor和Proactor模式学习

    0.引言 在上一篇的笔记中,我们学习了操作系统提供的高效I/O管理技术,主要用于解决服务器在高并发场景下的资源浪费和瓶颈问题.但是在实际的代码编写中,要是我们都全部调用底层的I/O多路复用接口来编写网 ...

  2. 1.TP6的入门-安装

    打开官网,找到这里点击手册 或者直接访问 这里 可以看到TP6已经有了赞助商 然后往后面阅读,发现他推荐我们读这个 这个入门必读还是不错的,简单的看看就行 后面就开始安装吧 首先注意自己的环境php版 ...

  3. 鸿蒙NEXT开发案例:数字转中文大小写

    [引言] 本应用的主要功能是将用户输入的数字转换为中文的小写.大写及大写金额形式.用户可以在输入框中输入任意数字,点击"示例"按钮可以快速填充预设的数字,点击"清空&qu ...

  4. GAN和CGAN——生成式对抗网络和条件生成式对抗网络

    GAN的定义 GAN是一个评估和学习生成模型的框架.生成模型的目标是学习到输入样本的分布,用来生成样本.GAN和传统的生成模型不同,使用两个内置模型以"对抗"的方式来使学习分布不断 ...

  5. 鸿蒙NEXT开发案例:温度转换

    [引言] 温度是日常生活中常见的物理量,但不同国家和地区可能使用不同的温度单位,如摄氏度(Celsius).华氏度(Fahrenheit).开尔文(Kelvin).兰氏度(Rankine)和列氏度(R ...

  6. PHPstorm配置webserver

    phpstorm自带了一个web server,我们可以直接在IDE中直接运行调试代码,非常方便. 配置interpreter 工程第一次运行还要配置一下php的解释器,我电脑的配置如下: 可以看到代 ...

  7. phpredis和predis

    一般我们常用的扩展是phpredis和predis两个 phpredis, 它是用c写的php的高效扩展:https://github.com/phpredis/phpredis, predis, 它 ...

  8. oracle客户端安装先决条件检查出现PRVF-7531错误

    场景:在局域网内,远程一台客户机进行客户端安装 度娘后,说一般情况下,由于操作系统未开启默认共享,导致Oracle无法检查环境的可用性. 查看server服务正常开启. 通过net share将c进行 ...

  9. 洛谷P7911 [CSP-J 2021] 网络连接题解

    普通的模拟题,数据很小,基本排除超时超空间的可能 上代码: #include<bits/stdc++.h> #define LL long long using namespace std ...

  10. 一款基于 .NET MVC 框架开发、功能全面的MES系统

    前言 今天大姚给大家分享一款基于 .NET MVC 框架开发.功能全面的离散型零部件制造管理系统(MES):EasyMES. 项目介绍 EasyMES一款基于 .NET 6 MVC 框架开发.开源免费 ...