托管代码中来自和到wpf图像的二维像素array

托管代码中来自和到wpf图像的二维像素array

ID:18218535

大小:309.00 KB

页数:29页

时间:2018-09-15

托管代码中来自和到wpf图像的二维像素array_第1页
托管代码中来自和到wpf图像的二维像素array_第2页
托管代码中来自和到wpf图像的二维像素array_第3页
托管代码中来自和到wpf图像的二维像素array_第4页
托管代码中来自和到wpf图像的二维像素array_第5页
资源描述:

《托管代码中来自和到wpf图像的二维像素array》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、·下载ImageWarp演示项目934.9(需要.NET4.5)·下载ImageWarp源527.3(桌面Express的VisualStudio2012)图0.图像扭曲·来自"基于移动最小二乘的图像变形"(图像的蓝色标记部分)的原始示例·拖放的变形点·结果目录·介绍·使用程序WarpImage·某些背景和链接·项目。视图和命令的结构·用于图像和点的xaml/视图·DragPoints的样式:模板化缩略图和MVVM·将图像坐标转换为位图坐标·二维像素array和到WPF图像·刚性Point-to-Point均值最小二乘算法·矩形网格的简单反变换

2、·Pointsofinterest·许可证介绍我对把static图片转换成"正在移动"图片感兴趣。我认为点的变形会是一个有用的开始。作者i:,TravisMcPhail和JoeWarren,我找到了这篇文章。但是我没有找到任何C#代码的代码,所以我写了这个C#/wpf爱好程序(专业演示,肤浅测试,不优化计算时间)。适用于读者的兴趣点:·第一印象点图像翘曲可以做什么。·创建和拖动的简单示例(这里:使用模板化缩略图和MVVM的链接点。·访问的一个示例:从/到图像的2D像素中的像素的全部访问。·刚性point-to-point算法(没有"预计算")的

3、C#实现。·利用简单逆向变换对图像进行变换。我假设读者对C#。WPF和MVVMPattern很熟悉。应用的MVVMPattern(不那么严格或者exemplary)用于组织代码。本文为C#/wpf程序员提供了一个工作解决方案/最小框架。在本文中,我将使用接口来展示代码的compact全局描述。这些接口不是代码的一部分,我使用SharpDevelop分别提取了接口。为了解释,我有时会把一些局部函数作为全局函数,并引入变量的属性。使用程序WarpImage图1.使用Warp按钮模式的WarpImage,2屏幕快照。参见图1以获得程序的两个屏幕截图。

4、左图像:指定扭曲点,右图像:变形后。点1.Points12:给人一个更大的Coffee杯,13个挤压头,15个下巴,16-20abs运动,21movebrown,休息点锚定其余的图像。注意已经连接点的注释功能。程序首先在应用程序目录中或者在项目的映像目录中显示文件"Test.jpg"的映像。可以从文件资源管理器中删除新图像。点击鼠标右键创建点,通过右键单击一个编号点,可以使用上下文菜单对点进行delete。所有点都可以使用"清除点"按钮清除。降弯点实际上是一个小锚点,一个编号较大的拖动点指定经弯曲后的位置和连接线。本文中的anchor和拖拉点,

5、也称为WarpingWarpingspecifyspecifywarpwarp。程序有2种模式:如果选择了"使用扭曲按钮",则使用原始文件中的图像并按下"扭曲图像"后,图像将被弯曲。必须按下按钮"重置图像"才能执行新的翘曲操作。可以修改变形点。使用这些按钮在原始图像和变形图像之间切换。在交互模式"拖动点"所有锚点都设置为拖动大编号点的位置。现在可以拖动单个点,当释放时,在现有图像上执行图像扭曲。它可以以用于精细调整转换,但当前的图像质量在每个曲线中都会变化。在WPF图像外移动的像素丢失。应该注意的是,MLS算法尝试了最好的方法,它可以对指定的变

6、形点进行处理。它的自由可以通过添加一些不被拖动来修复图像其他部分的扭曲点来约束。如果只指定一个点并将它的拖动整个图像就会被翻译。如果指定两个点并拖动其中一个点,整个图像将全局"旋转"。因这里,如果我们想要制作一个对象边界更薄,我们必须添加一些弯曲点而不需要拖动。另一方面,太多或者极端的约束无法解决。我的第一个观察是图0的示例,点转换的点是预期的。当在图1中应用时,例如放大Coffee杯,点转换是不合适的。要指定转换,必须使用几个点,而在结果中,边界受局部点约束的扭曲。如果我们在较大的距离上指定点,就会得到更好的结果,参见头部。我们发现了一个基本

7、的上下文/分辨率问题。从实际角度来看,支持(已经连接)line-to-line变换是比较可取的。某些背景和链接为了提供参考,我给出了在写这个程序时遇到的最相关的书签,我没有对图像进行系统的扫描。请注意,图像处理不是我的(主要)专长。我发现在画布中拖拽元素,并在WPF中标注一个图像,由乔什Smits。我没有使用adorners,如WPF图设计器:第1部分和图设计器插件,其中Sacha理发店介绍了MVVM。我的方法灵感来自vuyka的丹尼斯博客。可以拖动对象和简单形状连接线。首先,我用一个和一个带有Grid的ItemTemplate开始,并以Ite

8、msControl和Thumb结尾。对于更复杂的XAML绑定,我始终使用MSMDPattern:猴子看到猴子,或者与猴子和Tarzan保持距离:Goo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。