Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows Phone-对背景中的位图图像使用快速模糊效果_C#_Image_Silverlight_Image Processing_Windows Phone - Fatal编程技术网

C# Windows Phone-对背景中的位图图像使用快速模糊效果

C# Windows Phone-对背景中的位图图像使用快速模糊效果,c#,image,silverlight,image-processing,windows-phone,C#,Image,Silverlight,Image Processing,Windows Phone,我有封面图片的艺术家,我在页面中心使用200x200分辨率。我想把这个图像也复制到背景上,但要改变它,这样用户就可以识别颜色和一些大的形状。我不确定哪个名字在英语中有这种效果。我认为有些东西是虚幻、平滑之类的 我发现这段代码符合我的要求: coverBitmap.ImageOpened += (s, args) => { var wb = new WriteableBitmap((BitmapImage)s); var newHeight = 800; wb = wb.Resi

我有封面图片的艺术家,我在页面中心使用200x200分辨率。我想把这个图像也复制到背景上,但要改变它,这样用户就可以识别颜色和一些大的形状。我不确定哪个名字在英语中有这种效果。我认为有些东西是虚幻、平滑之类的

我发现这段代码符合我的要求:

coverBitmap.ImageOpened += (s, args) =>
{
  var wb = new WriteableBitmap((BitmapImage)s);
  var newHeight = 800;
  wb = wb.Resize(newHeight, newHeight, WriteableBitmapExtensions.Interpolation.Bilinear);
  wb = wb.Crop(new Rect(160, 0, 480, 800));
  wb = wb.Convolute(WriteableBitmapExtensions.KernelGaussianBlur5x5);
  var brush = new ImageBrush {ImageSource = wb};
  LayoutRoot.Background = brush;
};
问题是,对于KernelGaussianBru5x5,它仍然过于精确。我为19x19创建了自己的矩阵:

var array = new[,]
                {
                    {16, 17, 19, 20, 21, 22, 23, 24, 24, 24, 24, 24, 23, 22, 21, 20, 19, 17, 16},
                    {17, 19, 20, 22, 23, 24, 25, 26, 26, 26, 26, 26, 25, 24, 23, 22, 20, 19, 17},
                    {19, 20, 22, 24, 25, 26, 27, 28, 28, 28, 28, 28, 27, 26, 25, 24, 22, 20, 19},
                    {20, 22, 24, 25, 27, 28, 29, 30, 30, 30, 30, 30, 29, 28, 27, 25, 24, 22, 20},
                    {21, 23, 25, 27, 28, 29, 31, 31, 32, 32, 32, 31, 31, 29, 28, 27, 25, 23, 21},
                    {22, 24, 26, 28, 29, 31, 32, 33, 33, 33, 33, 33, 32, 31, 29, 28, 26, 24, 22},
                    {23, 25, 27, 29, 31, 32, 33, 34, 34, 35, 34, 34, 33, 32, 31, 29, 27, 25, 23},
                    {24, 26, 28, 30, 31, 33, 34, 35, 35, 36, 35, 35, 34, 33, 31, 30, 28, 26, 24},
                    {24, 26, 28, 30, 32, 33, 34, 35, 36, 36, 36, 35, 34, 33, 32, 30, 28, 26, 24},
                    {24, 26, 28, 30, 32, 33, 35, 36, 36, 36, 36, 36, 35, 33, 32, 30, 28, 26, 24},
                    {24, 26, 28, 30, 32, 33, 34, 35, 36, 36, 36, 35, 34, 33, 32, 30, 28, 26, 24},
                    {24, 26, 28, 30, 31, 33, 34, 35, 35, 36, 35, 35, 34, 33, 31, 30, 28, 26, 24},
                    {23, 25, 27, 29, 31, 32, 33, 34, 34, 35, 34, 34, 33, 32, 31, 29, 27, 25, 23},
                    {22, 24, 26, 28, 29, 31, 32, 33, 33, 33, 33, 33, 32, 31, 29, 28, 26, 24, 22},
                    {21, 23, 25, 27, 28, 29, 31, 31, 32, 32, 32, 31, 31, 29, 28, 27, 25, 23, 21},
                    {20, 22, 24, 25, 27, 28, 29, 30, 30, 30, 30, 30, 29, 28, 27, 25, 24, 22, 20},
                    {19, 20, 22, 24, 25, 26, 27, 28, 28, 28, 28, 28, 27, 26, 25, 24, 22, 20, 19},
                    {17, 19, 20, 22, 23, 24, 25, 26, 26, 26, 26, 26, 25, 24, 23, 22, 20, 19, 17},
                    {16, 17, 19, 20, 21, 22, 23, 24, 24, 24, 24, 24, 23, 22, 21, 20, 19, 17, 16}
                };
我不确定我是否做对了。我从WinForm应用程序的Microsoft示例中找到了一个示例,结果是双[,],所以我乘以10000 a,然后将其保存为int[,]。但当我把这个应用到我的代码中时,创建新图像需要几秒钟,我仍然希望它更模糊


那个么,有并没有一种方法可以快速调整图像的大小、扩展和裁剪,然后模糊污迹,使其平滑?谢谢

查看诺基亚图像SDK