matlab operator と混同してい|
ます。それが実際に何を意味するのか言えますか?
2 つの画像マトリックスがあるimage1
とimage2
したら、image3=image1|image2;
どういう意味でしょうか?
ありがとう
matlab operator と混同してい|
ます。それが実際に何を意味するのか言えますか?
2 つの画像マトリックスがあるimage1
とimage2
したら、image3=image1|image2;
どういう意味でしょうか?
ありがとう
この演算子は、要素単位の論理和演算を表します: docを参照してください。
image1
とimage2
が論理行列 (エントリが または のいずれtrue
かfalse
) であると仮定すると、 の各エントリはとのそれぞれのエントリの論理 or であるimage3 = image1 | image2;
ことを意味します。image3
image1
image2
要素ごとの論理 OR 演算
それで:
[1 0] | [1 1]
結果として[ 1 1 ]
と、
[0 1] | [0 0]
になり[ 0 1 ]
ます。
あなたの場合、要素ごとの論理ORによって得られimage3
たサイズの行列で、真(1)または偽を保持しますimage1
。image2
2 つの同じサイズの行列があると仮定するimage1
とimage2
(論理を含むことができますが、他の値を含むこともできます)
次に、 andimage3 = image1 | image2
のいわゆる「論理マスク」を提供します。image1
image2
つまり、イメージ 3 は、少なくとも 1 つのイメージがゼロ以外の数であるポイントでは 1 (真) に等しく、両方がゼロの場合は 0 (偽) に等しくなります。
例:
image1 = [ 0 255;
166 0]
image2 = [-123 0;
255 0]
image3 = image1 | image2
% Will give as output:
[1 1
1 0]
初期の言語 (C、C++) で使用される演算子の拡張により、広く、C から派生した MATLAB では |
、標準的な意味、つまりOR
ブール論理の演算子があります。
についてのあなたのコメントについてelement-wise multiplication or division in matrix we use . as well, but for what purpose do we use |?
は、 を使用する場合、 とと同じようにと.|
同等です。これらすべての演算子では、オペランドが同じサイズである必要があります。しかし、歴史的に、通常の乗算と行列乗算の同じ記号のために、2 つの記号があり、それぞれ と があります。これらの記号とは、通常の乗算と行列乗算の論理のあいまいさを避けるために、まったく異なります。除算演算も同様です。|
.+
.-
*
.*
*
.*
同等の操作:
.+
==+
.-
==-
.|
==|
同等ではない操作:
.*
!=*
./
!=/