C++ SoA変換について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
poket

C++ SoA変換について

#1

投稿記事 by poket » 5年前

C++についての質問です 画像処理を行う際のSoA変換をスカラーで行いたいのですが下記コード該当部分の実装がよくわかりません ご教授していただけると嬉しいです。

コード:

void SOA(const Image_32F& src, Image_32F& dest, const int r)
{

Image_32F temp_32f;
copyMakeBorder(src, temp_32f, r, r, r, r);
const float wsum = (float)((2*r+1)*(2*r+1));

if (src.channels == 3)
{
Image_32F splitImg[3];
split(temp_32f, splitImg);

Image_32F destSplitImg[3] = { Image_32F(src.rows, src.cols, 1), Image_32F(src.rows, src.cols, 1), Image_32F(src.rows, src.cols, 1) };

for (int y = 0; y < src.rows; y++)
{
for (int x = 0; x < src.cols; x++)
{
float sum[3] = { 0 };
for (int j = -r; j <= r; j++)
{
for (int i = -r; i <= r; i++)
{
//sum処理
//ここを実装したい


}
}
//store処理
//ここを実装したい


}
}
merge(destSplitImg, 3, dest);
}
else if (src.channels == 1)
{
//gray image
std::cout << "not support gray image" << std::endl;
return;
}

アバター
あたっしゅ
記事: 667
登録日時: 14年前
住所: 東京23区
連絡を取る:

Re: C++ SoA変換について

#2

投稿記事 by あたっしゅ » 5年前

 マルチポストですね。
<a href="https://detail.chiebukuro.yahoo.co.jp/q ... 4227932549">
C++についての質問です 画像処理を行う際のSoA変換をスカラーで行いたいのですが... - Yahoo!知恵袋(ja)
</a>

 「SoA 変換」とありますので、検索したところ、
<a href="https://www.isus.jp/hpc/memory-layout/">
メモリーレイアウト変換 | iSUS(ja)
</a>
と出てきましたが、何か、参考になりましたでしょうか ? (「[:]」とかあるから、C/C++ のコードじゃないのか ?)

 また、ソースコードに「Image_32F&」とありますので、検索したところ、OpenCV 関連のものが出てきました。
OpenCV 関連の質問でしょうか ? OpenCV に詳しい方、お願いします。

 「SoA 変換をスカラーで行いたい」「sum処理」「store処理」について、もう少し詳しく説明されれば、
レスもつきやすいのではないでしょうか ?
VTuber:
[香車]東上☆Aho(暎帆)☆海美
http://atassyu.php.xdomain.jp/vtuber/index.html
レスがついていないものを優先して、レスするみみ。時々、見当外れなレスしみみ。

中の人:
手提鞄あたッしュ、[MrAtassyu] 手提鞄屋魚有店
http://ameblo.jp/mratassyu/
Pixiv: 666303
Windows, Mac, Linux, Haiku, Raspbery Pi, Jetson Nano, 電子ブロック 持ち。

poket
記事: 2
登録日時: 5年前

Re: C++ SoA変換について

#3

投稿記事 by poket » 5年前

解決しました ありがとうございました

返信

“C言語何でも質問掲示板” へ戻る