?? 卷積處理1.frm
字號(hào):
Index = 4
Left = 2760
TabIndex = 54
Top = 240
Width = 375
End
Begin VB.Label Label3
Caption = "1"
Height = 255
Index = 5
Left = 120
TabIndex = 53
Top = 720
Width = 375
End
Begin VB.Label Label3
Caption = "2"
Height = 255
Index = 6
Left = 120
TabIndex = 52
Top = 1320
Width = 375
End
Begin VB.Label Label3
Caption = "3"
Height = 255
Index = 7
Left = 120
TabIndex = 51
Top = 1800
Width = 375
End
Begin VB.Label Label3
Caption = "4"
Height = 255
Index = 8
Left = 120
TabIndex = 50
Top = 2280
Width = 375
End
Begin VB.Label Label3
Caption = "5"
Height = 255
Index = 9
Left = 120
TabIndex = 49
Top = 2760
Width = 375
End
End
Begin VB.Frame Frame1
Height = 3135
Index = 1
Left = 120
TabIndex = 2
Top = 120
Width = 3255
Begin VB.TextBox Text1
Height = 495
Index = 0
Left = 600
TabIndex = 11
Text = "-1"
Top = 720
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 1
Left = 1440
TabIndex = 10
Text = "-1"
Top = 720
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 2
Left = 2280
TabIndex = 9
Text = "-1"
Top = 720
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 3
Left = 600
TabIndex = 8
Text = "-1"
Top = 1560
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 4
Left = 1440
TabIndex = 7
Text = "8"
Top = 1560
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 5
Left = 2280
TabIndex = 6
Text = "-1"
Top = 1560
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 6
Left = 600
TabIndex = 5
Text = "-1"
Top = 2400
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 7
Left = 1440
TabIndex = 4
Text = "-1"
Top = 2400
Width = 495
End
Begin VB.TextBox Text1
Height = 495
Index = 8
Left = 2280
TabIndex = 3
Text = "-1"
Top = 2400
Width = 495
End
Begin VB.Label Label1
Caption = "1"
Height = 255
Index = 0
Left = 720
TabIndex = 17
Top = 360
Width = 375
End
Begin VB.Label Label1
Caption = "2"
Height = 255
Index = 1
Left = 1680
TabIndex = 16
Top = 360
Width = 375
End
Begin VB.Label Label1
Caption = "3"
Height = 255
Index = 2
Left = 2520
TabIndex = 15
Top = 360
Width = 375
End
Begin VB.Label Label1
Caption = "1"
Height = 255
Index = 3
Left = 240
TabIndex = 14
Top = 960
Width = 375
End
Begin VB.Label Label1
Caption = "2"
Height = 255
Index = 4
Left = 240
TabIndex = 13
Top = 1800
Width = 375
End
Begin VB.Label Label1
Caption = "3"
Height = 255
Index = 5
Left = 240
TabIndex = 12
Top = 2640
Width = 375
End
End
End
Begin VB.Label Label2
Caption = "請(qǐng)選擇模板:"
Height = 375
Left = 240
TabIndex = 18
Top = 720
Width = 1215
End
End
End
Attribute VB_Name = "frmjjpro"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
Dim w(24) As Integer
Dim n, m As Integer
Dim pixel(3, 300, 300) As Long
frmMain.Label1.Caption = "卷積處理"
frmMain.Pic2.Cls
Screen.MousePointer = 11
frmMain.ProgressBar1.Min = 0
frmMain.ProgressBar1.Max = frmMain.Pic1.ScaleWidth
frmMain.ProgressBar1.Visible = True
frmMain.ProgressBar1.Value = frmMain.ProgressBar1.Min
k = 0
If Option1(0).Value Then
For i = 0 To 8
w(i) = Val(Text1(i).Text)
Next i
n = frmMain.Pic1.ScaleWidth
m = frmMain.Pic1.ScaleHeight
For i = 0 To n
For j = 0 To m
c = frmMain.Pic1.Point(i, j)
pixel(0, i, j) = c And &HFF
pixel(1, i, j) = (c And 65280) \ 256
pixel(2, i, j) = (c And &HFF0000) \ 65536
Next j
Next i
For i = 1 To n - 1 '邊界作不處理
For j = 1 To m - 1 '邊界作不處理
r = pixel(0, i - 1, j - 1) * w(0) + pixel(0, i - 1, j) * w(1) + pixel(0, i - 1, j + 1) * w(2) + pixel(0, i, j - 1) * w(3) + pixel(0, i, j) * w(4) + pixel(0, i, j + 1) * w(5) + pixel(0, i + 1, j - 1) * w(6) + pixel(0, i + 1, j) * w(7) + pixel(0, i + 1, j + 1) * w(8)
g = pixel(1, i - 1, j - 1) * w(0) + pixel(1, i - 1, j) * w(1) + pixel(1, i - 1, j + 1) * w(2) + pixel(1, i, j - 1) * w(3) + pixel(1, i, j) * w(4) + pixel(1, i, j + 1) * w(5) + pixel(1, i + 1, j - 1) * w(6) + pixel(1, i + 1, j) * w(7) + pixel(1, i + 1, j + 1) * w(8)
b = pixel(2, i - 1, j - 1) * w(0) + pixel(2, i - 1, j) * w(1) + pixel(2, i - 1, j + 1) * w(2) + pixel(2, i, j - 1) * w(3) + pixel(2, i, j) * w(4) + pixel(2, i, j + 1) * w(5) + pixel(2, i + 1, j - 1) * w(6) + pixel(2, i + 1, j) * w(7) + pixel(2, i + 1, j + 1) * w(8)
If r > 255 Then r = 255
If r < 0 Then r = 0
If g > 255 Then g = 255
If g < 0 Then g = 0
If b > 255 Then b = 255
If b < 0 Then b = 0
frmMain.Pic2.PSet (i, j), RGB(r, g, b)
Next j
frmMain.ProgressBar1.Value = k
k = k + 1
Next i
frmMain.ProgressBar1.Visible = False
Screen.MousePointer = 0
End If
If Option2.Value Then
For i = 0 To 24
w(i) = Val(Text2(i).Text)
Next i
n = frmMain.Pic1.ScaleWidth
m = frmMain.Pic1.ScaleHeight
For i = 0 To n
For j = 0 To m
c = frmMain.Pic1.Point(i, j)
pixel(0, i, j) = c And &HFF
pixel(1, i, j) = (c And 65280) \ 256
pixel(2, i, j) = (c And &HFF0000) \ 65536
Next j
Next i
For i = 2 To n - 1 '邊界作不處理
For j = 2 To m - 1 '邊界作不處理
r = pixel(0, i - 2, j - 2) * w(0) + pixel(0, i - 2, j - 1) * w(1) + pixel(0, i - 2, j) * w(2) + pixel(0, i - 2, j + 1) * w(10) + pixel(0, i - 2, j + 2) * w(12) + _
pixel(0, i - 1, j - 2) * w(3) + pixel(0, i - 1, j - 1) * w(4) + pixel(0, i - 1, j) * w(5) + pixel(0, i - 1, j + 1) * w(11) + pixel(0, i - 1, j + 2) * w(9) + _
pixel(0, i, j - 2) * w(6) + pixel(0, i, j - 1) * w(7) + pixel(0, i, j) * w(8) + pixel(0, i, j + 1) * w(13) + pixel(0, i, j + 2) * w(14) + _
pixel(0, i + 1, j - 2) * w(15) + pixel(0, i + 1, j - 1) * w(16) + pixel(0, i + 1, j) * w(17) + pixel(0, i + 1, j + 1) * w(18) + pixel(0, i + 1, j + 2) * w(19) + _
pixel(0, i + 2, j - 2) * w(20) + pixel(0, i + 2, j - 1) * w(21) + pixel(0, i + 2, j) * w(22) + pixel(0, i + 2, j + 1) * w(23) + pixel(0, i + 2, j + 2) * w(24)
g = pixel(1, i - 2, j - 2) * w(0) + pixel(1, i - 2, j - 1) * w(1) + pixel(1, i - 2, j) * w(2) + pixel(1, i - 2, j + 1) * w(10) + pixel(1, i - 2, j + 2) * w(12) + _
pixel(1, i - 1, j - 2) * w(3) + pixel(1, i - 1, j - 1) * w(4) + pixel(1, i - 1, j) * w(5) + pixel(1, i - 1, j + 1) * w(11) + pixel(1, i - 1, j + 2) * w(9) + _
pixel(1, i, j - 2) * w(6) + pixel(0, i, j - 1) * w(7) + pixel(1, i, j) * w(8) + pixel(1, i, j + 1) * w(13) + pixel(1, i, j + 2) * w(14) + _
pixel(1, i + 1, j - 2) * w(15) + pixel(1, i + 1, j - 1) * w(16) + pixel(1, i + 1, j) * w(17) + pixel(1, i + 1, j + 1) * w(18) + pixel(1, i + 1, j + 2) * w(19) + _
pixel(1, i + 2, j - 2) * w(20) + pixel(1, i + 2, j - 1) * w(21) + pixel(1, i + 2, j) * w(22) + pixel(1, i + 2, j + 1) * w(23) + pixel(1, i + 2, j + 2) * w(24)
b = pixel(2, i - 2, j - 2) * w(0) + pixel(2, i - 2, j - 1) * w(1) + pixel(2, i - 2, j) * w(2) + pixel(2, i - 2, j + 1) * w(10) + pixel(2, i - 2, j + 2) * w(12) + _
pixel(2, i - 1, j - 2) * w(3) + pixel(2, i - 1, j - 1) * w(4) + pixel(2, i - 1, j) * w(5) + pixel(2, i - 1, j + 1) * w(11) + pixel(2, i - 1, j + 2) * w(9) + _
pixel(2, i, j - 2) * w(6) + pixel(2, i, j - 1) * w(7) + pixel(2, i, j) * w(8) + pixel(2, i, j + 1) * w(13) + pixel(0, i, j + 2) * w(14) + _
pixel(2, i + 1, j - 2) * w(15) + pixel(2, i + 1, j - 1) * w(16) + pixel(2, i + 1, j) * w(17) + pixel(2, i + 1, j + 1) * w(18) + pixel(2, i + 1, j + 2) * w(19) + _
pixel(2, i + 2, j - 2) * w(20) + pixel(2, i + 2, j - 1) * w(21) + pixel(2, i + 2, j) * w(22) + pixel(2, i + 2, j + 1) * w(23) + pixel(2, i + 2, j + 2) * w(24)
If r > 255 Then r = 255
If r < 0 Then r = 0
If g > 255 Then g = 255
If g < 0 Then g = 0
If b > 255 Then b = 255
If b < 0 Then b = 0
frmMain.Pic2.PSet (i, j), RGB(r, g, b)
Next j
frmMain.ProgressBar1.Value = k
k = k + 1
Next i
frmMain.ProgressBar1.Visible = False
Screen.MousePointer = 0
End If
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
frmjjpro.Left = 4500
frmjjpro.Top = 6000
Frame1(1).Visible = True
Frame2.Visible = False
End Sub
Private Sub Option1_Click(Index As Integer)
Call Form_Load
Text1(0).SetFocus
End Sub
Private Sub Option2_Click()
Frame2.Visible = True
Frame1(1).Visible = False
Text2(0).SetFocus
End Sub
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -