VB圖像處理之二次線性插值的應用

字號:

上次講到了用DIB方法來獲取圖像的像素。從這次開始將如果運用已經(jīng)得到的像素來處理圖像。
     圖像插值放大的方法有很多,最主要的有二次線性插值和三次線性插值這兩種。這次我把自己的程序中所用的二次線性插值的算法公布給大家,希望對各位要使用VB寫類似程序的朋友有所幫助。
     程序中用到的API、數(shù)據(jù)類型、全局變量的定義請參考上一篇:《 VB實現(xiàn)圖像在數(shù)據(jù)庫的存儲與顯示 》
    Public Sub ZoomImage(ByVal OutPutWidth As Long, ByVal OutputHeight As Long)
     Dim I As Long
     Dim L As Long
     Dim X As Long
     Dim Y As Long
     Dim Xb As Long
     Dim Yb As Long
     Dim Xe As Long
     Dim Ye As Long
     Dim M As Integer
     Dim N As Integer
     Dim CurR As Long
     Dim CurG As Long
     Dim CurB As Long
     Dim NxtR As Integer
     Dim NxtG As Integer
     Dim NxtB As Integer
     Dim DR As Single
     Dim DG As Single
     Dim DB As Single
     Dim DRt As Single
     Dim DGt As Single
     Dim DBt As Single
     Dim Xratio As Single
     Dim Yratio As Single
     Dim CurStep As Single
     Dim NxtStep As Single
     Dim NegN As Single