Code covered by the BSD License  

Highlights from
ACQREAD

3.5

3.5 | 2 ratings Rate this file 17 Downloads (last 30 days) File Size: 4.75 KB File ID: #16023

ACQREAD

by Sebastien Authier

 

21 Aug 2007 (Updated 20 Dec 2010)

Read a Biopac AcqKnowledge file

| Watch this File

File Information
Description

[INFO, DATA] = ACQREAD(FILENAME) reads the content of the AcqKnowledge file specified in the string FILENAME. INFO is a structure containing the metadata (header, markers, etc.). DATA is a cell array, indexed by the channel number, containing the acquired physiological signals.

[INFO, DATA] = ACQREAD displays a dialog box that is used to retrieve the desired file.

ACQREAD supports all files created with Windows/PC versions of AcqKnowledge (3.9.1 or below), BSL (3.7.0 or below), and BSL PRO (3.7.0 or below).

ACQREAD supports channels that were acquired using different sampling rates, therefore having a different number of samples.

Details of the AcqKnowledge file format are presented in Biopac's Application Note #156 (last updated on June 29, 2007), and available at : "http://www.biopac.com/Manuals/app_pdf/app156.pdf".

ACQREAD, version 3.0 (2010-12-20)

P.S.

1) ACQREAD is faster than other similar functions available to date on the Matlab Central File Exchange, especially for files with multiple channels acquired at different sampling rates.

2) No scaling is done by ACQREAD. It reads the raw data as stored in the ACQ file, and returns it in the DATA structure without any processing. However, the scaling information of each channel is available in the INFO structure.

Acknowledgements

The author wishes to acknowledge the following in the creation of this submission:
Load BIOPAC ACQ (AcqKnowledge for PC) data

MATLAB release MATLAB 7.2 (R2006a)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (5)
29 Jan 2008 Trevor Cooper

Reads BIOPAC .ACQ files (tested with files of Version of Acq 3.7.0-3.7.2) as advertised. Time to completion for test file was ~55% that of load_acq.m so it also delivers on speed-up for this example. In addition to fields returned by load_acq.m, acqread.m also returned the comments that were automatically created by the logging software thereby providing added functionality. Layout of returned "info" structure could be improved to aid in the finding of information but that is nothing that a savvy user couldn't do on their own.

Thanks for the effort and for sharing! It has saved a huge amount of time.

18 Apr 2008 Sandra Park

We tried your "acqread.m" program on our data. But we found the result from your program does not match what we get from AcqKnowledge software. Have you done the proper scaling?

By the way, we have been using "load_acq.m" for a while. The result from "load_acq.m" is the same as what we get from AcqKnowledge software.

06 May 2008 Sebastien Authier

Sandra : to answer your question, no scaling is done by the "acqread" function. It reads the raw data as stored in the ACQ file, and returns it in the data structure without any processing. However, the scaling information of each channel, like all the information that comes from the AcqKnowledge file header, is available in the info structure returned by "acqread" (per channel data section). X-axis and Y-axis scaling are simple operations that are left to the user. It is not an error or a mistake : we designed it this way because we found it more convenient. If you don't like this feature, and if the slower speed and the inability to handle multiple sampling rates are not an issue for your application, I suggest you continue using "load_acq".

Thanks for your comment. I will specify this feature in the help text of the next "acqread" udpate.

22 Nov 2010 Damien

Hi!
I've tried to use this script in my 6.5 version and it returned the following error:

>> acqread
??? Error using ==> fix
Function 'fix' is not defined for values of class 'int32'.

Error in ==> C:\MATLAB6p5\toolbox\matlab\strfun\dec2hex.m
On line 23 ==> if ~isempty(find(d < 0 | d ~= fix(d)))

can you help me?

07 Dec 2010 Nathan Vack

Apologies for the cross-posting -- I've mentioned this on the load_acq.m page as well...

I've written a package in Python that'll do the .ACQ -> .MAT conversion. As far as I know, it'll handle any .ACQ file out there, including compressed files and very new ones.

It's available here:

https://github.com/njvack/bioread

It'll also let you work with the files in Python, of course -- but this is a Matlab site, so that may not be so interesting ;-)

Please login to add a comment or rating.
Updates
22 Aug 2007

An error in the function definition line (generating a warning message) was corrected.

20 Dec 2010

License updated as requested by MathWorks.

Tag Activity for this File
Tag Applied By Date/Time
data import Sebastien Authier 22 Oct 2008 09:23:43
data export Sebastien Authier 22 Oct 2008 09:23:43
biopac acqknowledge Cristina McIntire 05 Feb 2009 15:05:21
bsl Cristina McIntire 05 Feb 2009 15:05:21
acq Cristina McIntire 05 Feb 2009 15:05:21
file import Cristina McIntire 05 Feb 2009 15:05:21
biopac Sebastien Authier 21 Dec 2010 08:30:30
acqknowledge Sebastien Authier 21 Dec 2010 08:30:30
acq Sebastien Authier 21 Dec 2010 08:30:30
medical Sebastien Authier 21 Dec 2010 08:30:31

Contact us at files@mathworks.com