Optical coherence tomography (OCT) is a prominent biomedical tissue imaging technique that provides noninvasive, micrometer-resolution measurements [1
]. Polarization-sensitive OCT (PSOCT) [2
] is a functional extension of OCT that can measure the depth-resolved birefringent characteristics of biological tissues such as collagen, cartilage, and muscle. OCT and PSOCT have evolved from the earlier time domain to the current Fourier domain system because of the high signal-to-noise ratio and high imaging speed of the Fourier domain system [23
OCT systems with more than 100K A-line speeds (where K denotes 210
and A-line speed is axial scan lines per second) have been demonstrated [25
]. With such a fast A-line speed, the data processing becomes the bottleneck of the system. Compared with standard non-polarization-sensitive OCT, the fiber-based PSOCT system needs to acquire four times the amount of data for the same size picture. In addition, a time-consuming algorithm is needed to calculate the depth-dependent birefringent information. The most common way to solve this problem is to acquire the data and save it on a hard disk, then process the acquired data afterward, or to process and display a portion of the acquired data in real time [7
]. However, real-time processing for all the acquired data is preferred and necessary in clinical imaging, especially for applications such as endoscopy and ophthalmology.
Hardware-based parallel processing schemes, such as digital signal processors or field-programmablegate-array-based schemes are the most common methods to provide real-time OCT data processing [28
]. However, additional hardware inclusion in the system increases the system complexity and cost. In addition, the programming and debugging can be very tedious for the added hardware.
Multiple processing units have become popular on personal computers. Most personal computers arrive prebuilt with multiple processing units such as multicore CPUs, multicore video processors, and multicore audio processors. With these multiple processing units, high-performance parallel computing is available on personal computers without the inclusion of additional hardware. In this paper, we demonstrate real-time data processing and display of a fiber-based swept source PSOCT system with a multicore CPU computer and shared memory parallel computing technique. Using the multicore CPU and shared memory parallel computing technique, the OCT software processing speed was increased with minimum modification of the original program. With our current Quad-Core Intel Xeon X5355 2.66GHz workstation, real-time processing of standard non-polarization-sensitive OCT data as fast as 80 K A-lines per second is possible. Real-time processing of a 20K A-line swept source fiber-based PSOCT system is demonstrated.