マトリックスとしてリストした画像があります。その画像を転置して、その画像を画面に表示したいと思います。
これを「難しい」方法、つまりMATLABの転置関数を使用せずに行う方法を知りたいです。
マトリックスとしてリストした画像があります。その画像を転置して、その画像を画面に表示したいと思います。
これを「難しい」方法、つまりMATLABの転置関数を使用せずに行う方法を知りたいです。
これは授業のためですので、正確な答えはお伝えしませんが、正しい方向に進めていきます。組み込み関数を使用するのではなく、手動で情報を転置する方法を探していると思います。
Matlabは、値をベクトルと「サイズ」の形式で行列に格納します。たとえば、2x3行列は、6つの値とともにベクトルに格納され、[2,3](内部)で2x3であることを示します。 6x1ではありません。
2x3行列の場合、これはベクトル内の値の順序です。
1 3 5
2 4 6
(2,2)の値を参照するには、A(2,2)またはA(4)として参照できます。(1,3)の値はA(5)として参照できます。
そのため、転置された順序で値を参照するベクトルを作成できる場合は、新しい値を適切な順序に割り当てて、適切なサイズの行列に格納できます。要点を述べるために、上記の行列の転置を考えてみましょう。
1 2
3 4
5 6
これは、サイズ(3,2)の(1,3,5,2,4,6)として表されます。ベクトル(1,3,5,2,4,6)を作成できる場合は、そのベクトルを使用して値を適切に割り当てることができます。
ここに解決策のヒントがあります: 転置A(1,2)
は、通常の配列A
の要素B(2,1)
を転置された配列B
( B=A'
) の要素に変換し、その逆も同様です。したがって、すべての行と列を繰り返し処理し、要素ごとに変換を適用できます。