Shifting data when reading from binary file using fread
2 ビュー (過去 30 日間)
古いコメントを表示
I am trying to read experimental data from a binary file using fread. While the resulting data is read almost correct, the data is slightly shifting in a seemingly unpredictable manner. An example of this is given below (note that the direction of shifting is different for all signals):

While the result should look more like:

I am using the following code:
fid = fopen('sound_s3');
data = fread(fid,[1024, inf],'int32'); % reading in the 1024 signals of ~50k samples each
fclose(fid);
data = data/2^31; % converting bit to pressure
% plotting the examples
figure
plot(data(1,1:20000)');
xlabel('sample');ylabel('pressure')
figure
data = data - smoothdata(data,2,'movmean',1000);
plot(data(1,1:20000)');
xlabel('sample');ylabel('pressure')
Does anyone know what could cause this issue? I have tried basically all 'fread' options, and I am sure that the data is stored in 32 bit precision.
Note that I am sure that the signal is measured and should look like the second image.
Thanks in advance!
11 件のコメント
Walter Roberson
2019 年 5 月 30 日
I got lost in the question of bit depth. One part says that the daq are single bit and then a second later it was talking about 32 bits per sample.
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で National Instruments Frame Grabbers についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!