前提・実現したいこと
Pyhton初心者です。
該当ソースは、C言語で作成されているのですが、pythonへコンバートした際の記述が不明な為、ご教授をお願いいたします。
主に「fread( &buf, sizeof( unsigned short int ), 1, fp )」の個所と多次元配列の「buf」の取り扱いがpyton上
どのように記述するのか理解できておりません。
該当のソースコード
int width = 画像サイズ(幅);
int hight = 画像サイズ(高さ);
int filecount = ファイル件数;
float *tmp = NULL;
float ***tmp2 = NULL
FILE *fp;
char fpath = イメージ画像のパス
unsigned short int buf;
//tmp 用メモリの確保
tmp = (float*)calloc( width * hight, sizeof( float ) );
//tmp2 用メモリの確保
(tmp2) = (float**)calloc( filecount, sizeof( float ** ) );
for( i = 0 ; i < filecount ; i++ ){
-(tmp2)[i] = (float*)calloc( lines, sizeof( float * ) );
-for( j = 0 ; j < hight ; j++ ){
--(tmp2)[i][j] = (float)calloc( width, sizeof( float ) );
-}
}
for( i = 0 ; i < filecount ; i++ ){
-fp = fopen( fpath, "rb" );
-for( j = 0 ; j < hight ; j++ ){
--for( k = 0 ; k < width ; k++ ){
---fread( &buf, sizeof( unsigned short int ), 1, fp );
---if( buf != 0 ){
----tmp[jwidth+k] = (float)( 10.0 * log10( (double)(bufbuf) ) - 83.0 );
---}
--}
-}
-for( j = 0 ; j < (3/2) ; j++ ){
--for( k = 0 ; k < width ; k++ ){
---(tmp2)[i][j][k] = tmp[jwidth+k];
--}
-}
}
回答2件
あなたの回答
tips
プレビュー