网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月06日漏签0天
vb吧 关注:156,132贴子:1,166,128
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 9回复贴,共1页
<<返回vb吧
>0< 加载中...

求解:VB如何把采集的图片转化为二维数组保存

  • 只看楼主
  • 收藏

  • 回复
  • westbest
  • 世界你好
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 古小晓love
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
是把图片的什么化为二维数组?


2025-06-06 04:39:21
广告
  • westbest
  • 世界你好
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
rgb


  • westbest
  • 世界你好
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
刚接触VB不大懂,求指教


  • shengjian02
  • 网络通信
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
1.先用POINT取颜色值
2.把取来的颜色值计算后变成RGB值
3.把RGB值写进文件中
4.庆祝写进文件中


  • westbest
  • 世界你好
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这么大哥啊,初学不大懂,麻烦能再详细点吗


  • 《顾名思义》
  • 小吧主
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
算了吧,你还是用SavePicture这个要比你的读出来的数组再保存要强得多,最少比你想得要简单。


  • 古小晓love
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
给你贴个代码,是我最近做的,用的是vb。net,估计一样的。
Public Class Form1 Inherits System.Windows.Forms.Form Dim math1 As System.Math Dim i, rr, gg, r, a, g, b, bb, aa, ax, rx, bx, gx, k1, k2 As Short Dim j As Short Dim color1, c, cc, cd As System.Drawing.Color Dim color2 As System.Drawing.Color Dim tuxing As System.Drawing.Bitmap Dim tuxing2 As System.Drawing.Bitmap Dim g1 As System.Drawing.Graphics
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click On Error GoTo errorhandler Dim pic As Image OpenFileDialog1.Filter = "all files|(*.*)|(*.tif)|*.tif|(*.bmp)|*.bmp|(*.jpg)|*.jpg" OpenFileDialog1.FilterIndex = 4 OpenFileDialog1.Title = "打开.tif" OpenFileDialog1.ShowDialog() pic = New Bitmap(OpenFileDialog1.FileName) PictureBox1.Image = pic PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
Exit Suberrorhandler: exceptionhandler() End Sub Sub exceptionhandler() MessageBox.Show("异常行为:" & Err.Description) End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Me.Cursor = Cursors.WaitCursor g1 = PictureBox1.CreateGraphics tuxing = PictureBox1.Image Dim testimg As New Bitmap(tuxing.Width, tuxing.Height, Imaging.PixelFormat.Format24bppRgb) 'tuxing2 = Image.FromFile("c:\test.bmp") 'tuxing2=picturebox2.image For i = 0 To tuxing.Width - 1 For j = 0 To tuxing.Height - 1 color1 = tuxing.GetPixel(i, j) color2 = Color.FromArgb(255 - color1.A, 255 - color1.B, 255 - color1.G, 255 - color1.R) testimg.SetPixel(i, j, color2) Next j Next i 'testimg.Save("c:\test.bmp") PictureBox2.Image = testimg Me.Cursor = Cursors.Arrow End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Me.Cursor = Cursors.WaitCursor Dim blocksize As Short = 3 Dim n As Short = 0 tuxing = PictureBox1.Image Dim tuxing2 As New Bitmap(tuxing.Width, tuxing.Height, Imaging.PixelFormat.Format24bppRgb) For i = 2 To tuxing.Width - 2 For j = 2 To tuxing.Height - 2 rx = 0 : gx = 0 : bx = 0 For k1 = -1 To 1 For k2 = -1 To 1 c = tuxing.GetPixel(i + k1, j) r = c.R g = c.G b = c.B a = c.A rx = rx + r gx = gx + g bx = bx + b Next k2 Next k1 rr = rx / 25 gg = gx / 25 bb = bx / 25 If rr < 0 Then rr = 0 If rr > 255 Then rr = 255 If gg < 0 Then gg = 0 If gg > 255 Then gg = 255 If bb < 0 Then bb = 0 If bb > 255 Then bb = 255 c = c.FromArgb(a, rr, gg, bb) tuxing2.SetPixel(i, j, c) Next j Next i tuxing2.Save("c:\test1.tif") PictureBox2.Image = tuxing2 Me.Cursor = Cursors.Arrow End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Close() End Sub



2025-06-06 04:33:21
广告
  • 古小晓love
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Me.Cursor = Cursors.WaitCursor Dim i, i1, ji As Integer Dim j, gx, gy, bx, by, k1, k2 As Integer Dim dt(181) As Integer Dim r As Long Dim g, dm As Long Dim b As Long Dim rr, j1, rx As Integer Dim gg, m As Short Dim bb As Integer Dim n As Long tuxing = PictureBox1.Image Dim testimg As New Bitmap(tuxing.Width, tuxing.Height, Imaging.PixelFormat.Format24bppRgb) For i = 2 To tuxing.Width - 2 For j = 2 To tuxing.Height - 2 m = 0 For k1 = -1 To 1 For k2 = -1 To 1 c = tuxing.GetPixel(i + k1, j + k2) r = c.R g = c.G b = c.B dt(m) = r m = m + 1 Next k2 Next k1 For i1 = m - 1 To 1 Step -1 For j1 = 1 To i1 If dt(j1 - 1) > dt(j1) Then dm = dt(j1 - 1) dt(j1) = dt(j1 - 1) dt(j1 - 1) = dm End If Next j1 Next i1 rr = dt(Int(m / 2)) c = c.FromArgb(c.A, rr, rr, rr) testimg.SetPixel(i, j, c)
Next j Next i PictureBox2.Image = testimg testimg.Save("c:\test1.tif") Me.Cursor = Cursors.Arrow End SubEnd Class


  • 古小晓love
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
是对图片进行打开,逆反,去噪的


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 9回复贴,共1页
<<返回vb吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示