FIGURE SUMMARY
Title

OpenBloodFlow: A User-Friendly OpenCV-Based Software Package for Blood Flow Velocity and Blood Cell Count Measurement for Fish Embryos

Authors
Farhan, A., Saputra, F., Suryanto, M.E., Humayun, F., Pajimna, R.M.B., Vasquez, R.D., Roldan, M.J.M., Audira, G., Lai, H.T., Lai, Y.H., Hsiao, C.D.
Source
Full text @ Biology (Basel)

The overall scheme for blood flow velocity and blood cell count in zebrafish and medaka. (A) Overview of the entire analysis pipeline for blood flow measurement in fish embryos by OpenCV. (B) Shaky video footage of a fish blood vessel. (C) After performing video stabilization, the masked area presented for smooth oscillation. The motion illustration in estimating optical flow was applied using the Gunnar Farneback method by OpenCV at time = t (D) and time = t + dt (E).

Simple graphical user interface of OpenBloodFlow GUI Package with complete functions for blood flow velocity and blood cell count analysis. OpenBloodFlow can automatically or manually select the blood vessel as dorsal aorta depending on video contrast and quality. We suggest using the manual function to determine specific ROI for blood cell count analysis for low contrast or poor videos quality.

The computation of blood velocity and blood cell count in selected ROI and the displayed oscillation pattern over time in zebrafish aged 3 dpf. (A) ROI was chosen within the dorsal aorta for blood flow measurement. (B) Shaky video footage of blood vessels after performing video stabilization and the masked area presented for smooth oscillation. (C) The red line points to the average blood flow velocity (left panel) and blood cell count (right panel).

Validation of the performance of OpenBloodFlow GUI package for blood flow velocity measurement through comparison with ImageJ method. Zebrafish embryos aged (A) 2 dpf, (B) 3 dpf, (C) 4 dpf, or (D) 5 dpf were subjected to ImageJ and OpenCV methods to measure the average blood flow velocity. The data were shown as mean with standard deviation (circle dots show the data analyzed by OpenCV, while square dots show the data analyzed by ImageJ), and the significant difference was calculated by paired t-test. (ns = no significance, n = 18–26).

Validation of OpenBloodFlow method through comparison with ImageJ performance for blood flow velocity measurement in zebrafish larvae after exposure to control (A) and 0.15 ppm PHZ (Phenylhydrazine) (B). PHZ exposure significantly reduced the blood flow velocity in zebrafish larvae. (C) Side-by-side comparison of the average blood flow velocity measurement by ImageJ and OpenCV methods. The data were presented as mean with standard deviation, and statistical significance was determined by paired t-test for intra-group comparison or unpaired t-test for inter-group comparison. (ns = no significance, **** p < 0.0001, n = 10) (circle dots show the data analyzed by OpenCV, while square dots show the data analyzed by ImageJ).

Validation of OpenBloodFlow performance for blood flow velocity measurement in zebrafish larvae through comparison with ImageJ method. Average blood flow velocity measured by ImageJ (A) and OpenBloodFlow (B) after exposure to ractopamine. Ractopamine exposure significantly elevated the average blood flow in zebrafish. (C) Side-by-side comparison of the average blood flow velocity measurement by ImageJ or OpenCV methods. The data were shown as mean with standard deviation and statistical significance determined by paired t-test for intra-group comparison (ns = no significance, * p < 0.05, ** p < 0.01, n = 20) (circle dots show the control data, while square dots show the ractopamine data in A and B).

Validation of blood cell count in zebrafish embryos calculated by OpenBloodFlow through comparison with manual counting method. Zebrafish embryos aged at 2 dpf, 3 dpf, 4 dpf, or 5 dpf were subjected to blood cell counting using the naked eye (Manual) and OpenCV method. The data were shown as mean with standard deviation, and statistical significance was determined by an ordinary one-way ANOVA test (ns = no significance, n = 20). (circle dots show the data analyzed manually by manual counting, while square dots show the data analyzed by OpenCV).

Acknowledgments
This image is the copyrighted work of the attributed author or publisher, and ZFIN has permission only to display this image to its users. Additional permissions should be obtained from the applicable author or publisher of the image. Full text @ Biology (Basel)