計算機(jī)視覺算法工程師常見面試題2

一、常見的數(shù)據(jù)增廣方法

  1. Color Jittering:
    對顏色的數(shù)據(jù)增強(qiáng):圖像亮度、飽和度、對比度變化;彩色變換
  2. PCA Jittering:
    首先按照RGB三個顏色通道計算均值和標(biāo)準(zhǔn)差,再在整個訓(xùn)練集上計算協(xié)方差矩陣,進(jìn)行特征分解,得到特征向量和特征值,用來做PCA Jittering;
  3. Random Scale:
    尺度變換;隨機(jī)縮放
  4. Random Crop:
    采用隨機(jī)圖像差值方式,對圖像進(jìn)行裁剪、縮放;包括Scale Jittering方法(VGG及ResNet模型使用)或者尺度和長寬比增強(qiáng)變換;隨機(jī)裁剪
  5. Horizontal/Vertical Flip:
    水平/垂直翻轉(zhuǎn);翻轉(zhuǎn)
  6. Shift:
    平移變換;
  7. Rotation/Reflection:
    旋轉(zhuǎn)/仿射變換;
  8. Noise:
    高斯噪聲、模糊處理;

二、圖像上采樣 & 圖像處理中常見的插值方法

1、圖像上采樣

上采樣upsampling的主要目的是放大圖像,幾乎都是采用內(nèi)插值法,即在原有圖像像素的基礎(chǔ)上,在像素點(diǎn)值之間采用合適的插值算法插入新的元素。

2、線性插值法(linear interpolation)

線性插值法是指使用連接兩個已知量的直線來確定在這個兩個已知量之間的一個未知量的值的方法。

假設(shè)已知兩個坐標(biāo)(x0,y0)和(x1,y1),要得到[x0,x1]區(qū)間內(nèi)某一位置x在直線上的值。


image.png

該直線的方程可表示為:


image.png

假設(shè)方程兩邊的值為α,那么這個值就是插值系數(shù)——從x0到x的距離與從x0到x1的距離的比值。由于x已知,所以可以從公式中得到α的值:
image.png

這樣


image.png

也就是:
image.png

3、雙線性插值

雙線性插值是插值算法中的一種,是線性插值的擴(kuò)展。利用原圖像中目標(biāo)點(diǎn)四周的四個真實(shí)存在的像素值來共同決定目標(biāo)圖中的一個像素值,其核心思想是在兩個方向分別進(jìn)行一次線性插值。


image.png

已知的紅色數(shù)據(jù)點(diǎn)和待插值的綠色數(shù)據(jù)點(diǎn)

假如我們想得到未知函數(shù)f在點(diǎn)P= (x,y) 的值,假設(shè)我們已知函數(shù)f在


image.png

四個點(diǎn)的值。

第一步:X方向的線性插值,在Q12,Q22中插入藍(lán)色點(diǎn)R2,Q11,Q21中插入藍(lán)色點(diǎn)R1;

image.png

第二步 :Y方向的線性插值 ,通過第一步計算出的R1與R2在y方向上插值計算出P點(diǎn)。

image.png

在x與y方向上,z值成單調(diào)性特性的應(yīng)用中,此種方法可以做外插運(yùn)算,即可以求解Q11~Q22所構(gòu)成的正方形以外的點(diǎn)的值。

總結(jié):線性插值法利用原圖像中兩個點(diǎn)計算像素值進(jìn)行插值,雙線性插值法利用原圖像中四個點(diǎn)計算目標(biāo)像素值進(jìn)行插值。

四、圖像處理中常見的插值方法

image.png

1、最鄰近元法

這是最簡單的一種插值方法,不需要計算,在待求象素的四鄰象素中,將距離待求象素最近的鄰象素灰度賦給待求象素。設(shè)i+u, j+v(i, j為正整數(shù), u, v為大于零小于1的小數(shù),下同)為待求象素坐標(biāo),則待求象素灰度的值 f(i+u, j+v) 如下圖所示:


image.png

如果(i+u, j+v)落在A區(qū),即u<0.5, v<0.5,則將左上角象素的灰度值賦給待求象素,同理,落在B區(qū)則賦予右上角的象素灰度值,落在C區(qū)則賦予左下角象素的灰度值,落在D區(qū)則賦予右下角象素的灰度值。

最鄰近元法計算量較小,但可能會造成插值生成的圖像灰度上的不連續(xù),在灰度變化的地方可能出現(xiàn)明顯的鋸齒狀。

2、雙線性內(nèi)插法

雙線性內(nèi)插法是利用待求象素四個鄰象素的灰度在兩個方向上作線性內(nèi)插。


image.png

如下圖所示:
對于 (i, j+v),f(i, j) 到 f(i, j+1) 的灰度變化為線性關(guān)系,則有:

f(i, j+v) = [f(i, j+1) - f(i, j)] * v + f(i, j)

同理對于 (i+1, j+v) 則有:

f(i+1, j+v) = [f(i+1, j+1) - f(i+1, j)] * v + f(i+1, j)

從f(i, j+v) 到 f(i+1, j+v) 的灰度變化也為線性關(guān)系,由此可推導(dǎo)出待求象素灰度的計算式如下:

f(i+u, j+v) = (1-u) * (1-v) * f(i, j) + (1-u) * v * f(i, j+1) + u * (1-v) * f(i+1, j) + u * v * f(i+1, j+1)

雙線性內(nèi)插法的計算比最鄰近點(diǎn)法復(fù)雜,計算量較大,但沒有灰度不連續(xù)的缺點(diǎn),結(jié)果基本令人滿意。它具有低通濾波性質(zhì),使高頻分量受損,圖像輪廓可能會有一點(diǎn)模糊。

3、三次內(nèi)插法

該方法利用三次多項(xiàng)式S(x)求逼近理論上最佳插值函數(shù)sin(x)/x, 其數(shù)學(xué)表達(dá)式為:


image.png

待求像素(x, y)的灰度值由其周圍16個灰度值加權(quán)內(nèi)插得到,如下圖:


image.png

待求像素的灰度計算式如下:

f(x, y) = f(i+u, j+v) = ABC

其中:


image.png

三次曲線插值方法計算量較大,但插值后的圖像效果最好。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容