上記リンク箇所(引数Pの説明)と、実際にエラーを出した際に確認出来るbwareaopen内のvalid関数より、「double型・スカラ値・整数・非負」の値を設定する必要があります。なので、(ベクトルの場合)添え字を指定して、四捨五入して、絶対値を取り、double型にキャストすれば間違いなく入力できます。
下記はエラーを出してみて結果をキャプチャしたものです。
下記はサンプルコードです。
BW = logical(randi(2,100)-1);
variable = 1000;
BW2 = bwareaopen(BW,double(abs(round(variable(1)))));