1
Bitmap
(來自android.graphics)有sameAs
方法。 給定另一個位圖,如果它具有與此位圖相同的尺寸,配置和像素數據,則返回true。 我不知道它如何在引擎蓋下工作?重寫它有意義嗎(也許使用一些直方圖方法或關鍵點匹配)?位圖sameAs如何工作?
Bitmap
(來自android.graphics)有sameAs
方法。 給定另一個位圖,如果它具有與此位圖相同的尺寸,配置和像素數據,則返回true。 我不知道它如何在引擎蓋下工作?重寫它有意義嗎(也許使用一些直方圖方法或關鍵點匹配)?位圖sameAs如何工作?
,它基本上是
if(bmp1.height==bmp2.height && bmp1.width==bmp2.width) {
for(int i=0; i< bmp1.width; i++){
for(int j=0; j< bmp1.height; j++){
if(bmp1.getPixel(i,j) != bmp2.getPixel(i,j)) {
return false;
}
}
}
return true;
}
return false;
但它將使用例如memcmp低水平內存比較函數,而不是實際的循環那樣的。
至於是否有意義重寫它 - 不是真的。你會搞砸任何其他誰承擔該功能的作品。創建自己的函數sameKeyPoint可能有意義,但它可以進行關鍵點匹配。