簡體   English   中英

Python-NumPy數組邏輯XOR操作按字節進行

[英]Python - NumPy Array Logical XOR operation byte wise

我正在通過Pillow讀取圖像並將其轉換為numpy數組。

        A = numpy.asarray(Image.open(
            ImageNameA).convert("L"))
        B = numpy.asarray(Image.open(
            ImageNameB).convert("L"))

print A
[[255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 ..., 
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]
 [255 255 255 ..., 255 255 255]]

現在,當我對這2個numpy數組執行任何邏輯運算時,我會以“ True”和“ False”的形式獲取它

Answer = numpy.logical_xor(A,B)

print  numpy.logical_xor(A,C)
[[False False False ..., False False False]
 [False False False ..., False False False]
 [False False False ..., False False False]
 ..., 
 [False False False ..., False False False]
 [False False False ..., False False False]
 [False False False ..., False False False]]

我的圖像處理功能無法使用True,False ...如何獲取0,255(以字節為單位)形式的圖像

從問題標題來看,我想您打算使用的函數實際上是numpy.bitwise_xor否則它將按您的期望輸出0-255范圍內的數組。

logical_xor將大於1的所有數字視為True ,將0視為False並始終輸出布爾數組(僅0和1)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM