Tag: 图像

在C#中获取内存中的图像句柄

我有一个函数,可以Handle图像的Handle : DoSomethingWithImage( int imageHandle) { } 在我的主要内容中,我有一个Image myImage ,它驻留在内存中。 如何获取myImage的Handle ,以便我可以将Handle传递给DoSomethingWithImage() ? main() { //memorySTream is a byte[] Image myImage = Image.FromStream(memoryStream, true); DoSomethingWithImage( ??? ); }

如何最佳地确定图像中的边缘?

我最近被置于裁剪和调整图像大小的问题面前。 我需要裁剪图像的“主要内容”,例如,如果我有一个类似于此的图像: alt text http://sofzh.miximages.com/c%23/ 结果应该是msn内容没有白边(左和右)的图像。 我在X轴上搜索第一个和最后一个颜色变化,在Y轴上搜索相同的东西。 问题是逐行遍历图像需要一段时间…对于2000x1600px的图像,返回CropRect => x1,y1,x2,y2数据需要2秒钟。 我尝试为每个坐标进行遍历并在找到的第一个值上停止,但它在所有测试用例中都不起作用。有时返回的数据不是预期的,并且操作的持续时间类似。 任何想法如何减少遍历时间和发现围绕“主要内容”的矩形? public static CropRect EdgeDetection(Bitmap Image, float Threshold) { CropRect cropRectangle = new CropRect(); int lowestX = 0; int lowestY = 0; int largestX = 0; int largestY = 0; lowestX = Image.Width; lowestY = Image.Height; //find the lowest X bound; for (int y […]

从2个不同的图像C#创建新图像

我在一个函数中工作,我有两个图像,其中一个是背景,另一个是QR码,我需要使用背景(图像1)和QR图像创建一个新图像,但我需要定义QRCode图像的位置。 像波纹管图像, 最好的祝福

在C#中保存来自Webrequest的图像

我正在使用jQuery网络摄像头插件与我的页面中的网络摄像头进行通信并拍摄快照。 它的工作方式是与Flash助手通信。 要保存图片,它将获取另一个页面的名称,并向该页面发送Web请求。 我成功地收到了另一个请求。 我想保存该请求中的图像。

C# – 在背景图像(alpha通道)上绘制顶部图像 – WinForm

我有这个带有alpha通道的topimage,我需要将这个图像放在另一个背景图像上,而顶部图像的alpha通道显然保持完整。 现在我已经看过Canvas的一些教程,但我的项目似乎没有认识到Canvas。 任何人都知道为什么我不能使用Canvas或如何将这两个图像放在一起?

C#位图图像,字节数组和流!

我有一个函数将文件提取到字节数组(数据)。 int contentLength = postedFile.ContentLength; byte[] data = new byte[contentLength]; postedFile.InputStream.Read(data, 0, contentLength); 后来我使用这个字节数组来构造一个System.Drawing.Image对象(其中data是字节数组) MemoryStream ms = new MemoryStream(data); Image bitmap = Image.FromStream(ms); 我得到以下exception“ArgumentException:参数无效。” 原始发布的文件包含500k jpeg图像… 任何想法为什么这不起作用? 注意:我向你保证我有一个有效的理由转换为字节数组然后转换为内存流!!

C# – 如何将图像转换为8位彩色图像?

我需要将从文件加载的PNG图像转换为另一个设备(嵌入式编程)使用的每像素8位字节数组。 我正在逐个像素地复制到使用16位颜色创建的新图像 – Format16bppRgb565 ,但我需要Format8bpp ,这在.NET Framework中不存在。 (我不能使用Format8bppIndexed因为其他设备无法处理索引位图) Bitmap img = new Bitmap(imgPath); Bitmap img8 = new Bitmap(imgW, imgH, PixelFormat.Format16bppRgb565); for (int I = 0; I <= img.Width – 1; I++) { for (int J = 0; J <= img.Height – 1; J++) { img8.SetPixel(I, J, img.GetPixel(I, J)); } } 那么如何将Image转换为每像素8位字节数组呢? 我可以使用8位索引格式并提取字节吗? – Format8bppIndexed 我可以通过将32位颜色的R,G,B值减少到8位来计算像素颜色吗? […]

如何将图像右对齐,底部放在图片框中

我有picturebox1比我想加载的图像大得多。 我想要做的是将此图像对齐到右侧,并在屏幕截图的底部对齐: 编辑:工作 private void FromCameraPictureBox_Paint(object sender, PaintEventArgs e) { if (loadimage == true) { var image = new Bitmap(@”image.jpg”); if (image != null) { var g = e.Graphics; // — Optional — // g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; // — Optional — // g.DrawImage(image, FromCameraPictureBox.Width – image.Width, // to right FromCameraPictureBox.Height – image.Height, // to bottom […]

与Properties.Resources.image的图像比较

你能告诉我为什么以下情况是假的吗? List SelectedImages = new List(); SelectedImages.Add(Properties.Resources.my_image); if (SelectedImages[0] == Properties.Resources.my_image) // false { … } 即使我写: SelectedImages[0] = Properties.Resources.my_image; if (SelectedImages[0] == Properties.Resources.my_image) // false { … } 我怎样才能进行这种比较?

WPF图像移动和旋转

首先,我在这里放置我的情况sreenshot: 因此,我需要移动这些汽车(汽车是Image )箭头的位置。 为了直接驾驶我使用此function: private static void Eiti(Image target, double naujasX, double naujasY, double greitis, char kelias) { var top = Canvas.GetTop(target); var left = Canvas.GetLeft(target); top = Double.IsNaN(top) ? 0 : top; left = Double.IsNaN(left) ? 0 : left; naujasY = Paveikslas.canvasY(naujasY, kelias); var storyboard = new Storyboard(); greitis = 100 / greitis; // […]