opencv中的bitwise_not,bitwise_xor,bitwise_or,bitwise_and的使用方法與效果。

  1.將二指圖片的效果反轉既黑色變白色,白色變黑色。

 使用 

<span style="font-size:18px;">bitwise_not(InputArray src, OutputArray dst, InputArray mask = noArray());</span>
使用前


使用後:


int main() {
    Mat image,image2;
image=imread("")//路徑;
threshold(image, image2, 100, 255, THRESH_BINARY);//二值圖像
bitwise_not(image2,image2);
imshow("result",image2);


}

對於上述的效果同樣可以使用threshold來完成,只要修改threshold的闕值類型即可達到


threshold(image,image2,100,255,THRESH_BINARY_INV);即和使用bitwise_not同樣的效果。threshold的具體用法參考點擊打開鏈接


使用下列圖分別處理效果圖

2 bitwise_xor

<pre name="code" class="cpp"><span style="font-size:18px;">bitwise_xor(InputArray src1, InputArray src2, OutputArray dst, InputArray mask = noArray());</span>

對兩個圖像進行”異“處理。


3 bitwise_or


<span style="font-size:18px;">void bitwise_or(InputArray src1, InputArray src2,  OutputArray dst, InputArray mask = noArray());</span>

計算每個位操作分離的兩個數組或一個數組和一個標量。


4  bitwise_and

<span style="font-size:18px;">bitwise_and(InputArray src1, InputArray src2,  OutputArray dst, InputArray mask = noArray());</span>
對像素進行加和。



int main()
{
	Mat srcimage = imread("C:\\Users\\Administrator\\Desktop\\2.jpg");
	Mat dstimage = imread("C:\\Users\\Administrator\\Desktop\\34.jpg");
	Mat outputimage,out,andout;
	bitwise_xor(srcimage, dstimage, outputimage);
	bitwise_or(srcimage, dstimage, out);
	bitwise_and(srcimage, dstimage, andout);
		imshow("xor", outputimage);
		imshow("or", out);
		imshow("and", andout);
	waitKey(0);


}


        

發佈了31 篇原創文章 · 獲贊 26 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章