Blotch Detection and Removal For Archive Film Restoration: M. Kemal Gullu, Oguzhan Urhan, Sarp Erturk
Blotch Detection and Removal For Archive Film Restoration: M. Kemal Gullu, Oguzhan Urhan, Sarp Erturk
Blotch Detection and Removal For Archive Film Restoration: M. Kemal Gullu, Oguzhan Urhan, Sarp Erturk
de/aeue
Abstract Blotch detection and removal is an important issue for archive lm restoration. In this work, a two-stage Simplied Ranked Order Difference (SROD) detector that takes local motion changes into consideration has been proposed to increase blotch detection performance. Furthermore a novel pixel-based correction method that determines the new values of blotched pixels from spatio-temporal correlation considering edge information is developed. Experimental results show that the proposed approaches give successful detection and correction performances and outperform previously proposed techniques. 2007 Elsevier GmbH. All rights reserved.
Keywords: Blotch detection; Blotch restoration; Video restoration; Archive lm
1. Introduction
Film archives suffer from severe visual artifacts due to various factors. Some chemical operations have been employed to restore certain defects in the past. Emerging digital storage and broadcasting technologies make the digitization of lm archives inevitable. After the digitization it is possible to restore these archives using intelligent digital signal processing algorithms. These restoration algorithms mainly aim to improve the subjective visual quality of archive lms and also provide higher quality at similar compression rates for storage on digital media. A complete video restoration system typically comprises video segmentation, icker correction, blotch removal, scratch removal, noise reduction and image stabilization parts. Segmentation of archive lms into shots is an important task, since it is required for nearly all restoration methods. Video shot segmentation techniques proposed in [1,2] are particularly designed for B&W archive lms and have considerably higher accuracy in degraded sequences compared to conventional methods. Flicker artifacts can be considered as sudden brightness changes that do not
Corresponding author. Tel.: +90 262 335 11 68; fax: +90 262 335 28 12.
E-mail address: kemalg@kou.edu.tr (M.K. Gullu). 1434-8411/$ - see front matter doi:10.1016/j.aeue.2007.07.010 2007 Elsevier GmbH. All rights reserved.
belong to the natural scene. These defects should initially be restored to increase performance of further restoration stages. Methods proposed in [3,4] mainly aim to decrease brightness uctuations to accomplish restoration. Blotches are mainly caused by dust and deformation of lm material. Detection and restoration of blotches is explained in the following paragraph in more detail, because it is the main topic of this paper. Line scratches are mainly caused by abrasion of lm material with a mechanical part of the lm projector and occur in the form of vertical lines, generally retaining the same spatial position over several frames [5,6]. Transparent dust effects and lm-grain noise still remain after removing icker, blotch and scratch defects. These defects should also be restored for enhanced visual appearance as in [7,8]. Stabilization of archive lm may be required if the sequence shows uctuations and it can be carried out using approaches presented in [9,10] for example. Blotches are signicant degradations that mainly originate from the loss of lm gelatin and dirt particles covering the lm surface. Blotches are basically impulsive noise and lead to discontinuity because they appear randomly in the image sequence and hence the probability of existence of blotches at the same place in succeeding frames is very low. It is possible to consider the blotch removal process as
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
535
a two-stage procedure, of which the rst step is the detection of blotch locations and the second step is correcting the detected regions. Several methods have been proposed for the detection stage in the literature [1114]. The simplest method is (Spike Detection Index-a SDIa) that detects blotch regions using global motion compensated preceding and following frames, by thresholding the minimum of backward and forward squared pixel differences [11]. SDIa is capable of achieving a high-correct detection rate however it commonly results in too many false alarms. To reduce the false alarms that usually arise from edges, morphological postprocessing has been proposed in [12]. This post-processing improves the detection rate of SDIa but false alarms caused from local object motion and incorrect global motion compensation are not eliminated adequately. In [13], a ranked order difference (ROD) detector that arranges pixels from motion compensated previous and subsequent image regions in a ranked order, and then applies a three-stage thresholding strategy has been proposed. These three thresholds control the number of correct detections and false alarms; but the difculty of determining these three thresholds constraints the effectiveness of the ROD method. Therefore, a simplied ROD detector (SROD) that uses only one threshold has been proposed in [14]. This method gives improved detection performance for low-threshold values, but the number of false alarms increases in this case. For the correction stage, a multi-stage median lter (MMF) that is a concatenation of median-ltering operations can be used to correct the missing data regions as proposed in [15]. A 3-D auto regressive model-based technique for missing data interpolation is proposed in [16]. In [17], a texture synthesis method for computer vision applications has been proposed. This method models texture as a markov random eld (MRF) and nds a new pixel value for each unlled pixel according to the squared difference matching criteria, using a contour-based lling procedure. An exemplar-based image inpainting method for region lling and object removal is proposed in [18]. This method calculates a condence value for each pixel located on the contour of a dened target region and identies the surroundings of the pixel with the highest condence value. This part is then lled on a block basis, using spatial information not located within the target region and having the highest similarity with the parts to be lled. In [19], long-range correlation-based image information restoration has been proposed for restoring lost blocks. This method recovers lost image blocks using a long search region according to a luminance transformation-based MSE criterion for missing blocks. In this paper, a novel two-stage SROD detector that takes local motion changes into account is proposed. Furthermore, a new pixel-based correction method that determines the new values of blotched pixels from temporal correlation, using a contour-based approach similar to [18] and luminance transformation-based correlation as in [19] is proposed for the correction stage.
where b(x, y, t) is a detection variable which determines degraded (b(x, y, t) = 1) or clean (b(x, y, t) = 0) pixels, Io (x, y, t) is the original (or restored) value, and c(x, y, t) is the observed intensity value of blotched pixels, with (x, y) shows spatial position and t is used as temporal index. The detection stage intends to estimate b(x, y, t) for each pixel. The aim of the correction stage is to nd the new (restored) value Io (x, y, t) for blotched pixels (pixels for which b(x, y, t) = 1).
(2)
A corruption measure for I (x, y, t) can then be determined from P using the SROD operation given as SROD(x, y, t) min(P(x, y, t)) min(P(x, y, t)) I (x, y, t), I (x, y, t) > 0 = I (x, y, t) (3) I (x, y, t) max(P(x, y, t)), max(P(x, y, t)) > 0 0, otherwise. The corresponding pixel is agged as a blotch if SROD(x, y, t) exceeds a given detection threshold (T) and a blotch mask (b) is constructed as b(x, y, t) = 1 0 SROD(x, y, t) > T , otherwise. (4)
2.1.2. The proposed two-stage S-ROD detector It has been observed that false detections in SROD are mainly caused by motion effects or non-matching edges. It is therefore proposed in this paper, to utilize a two-stage SROD detector to compensate for such effects. In the proposed scheme, local motion compensation-based SROD detection is carried out after a preliminary standard SROD detection stage. It is shown that the proposed approach improves the detection performance by eliminating false alarms caused by local motion and edges.
536
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
In the proposed approach, initially standard SROD detection is utilized and an initial blotch mask (b1 ) is constructed using a comparably low-threshold value T 1 to ensure that blotches are successfully captured, despite a large number of false alarms. It is more important that no blotch is missed at this stage, as the number of false alarms will be reduced effectively in the following stage. Next, pixel-based local motion compensation is carried out at the locations of blotch candidates given by the initial blotch mask b1 and a second SROD detector is employed (see Fig. 1), this time with a
higher-threshold value T 2 using local motion compensated pixels. The nal blotch mask (b2 ) is constructed according to the output of the second SROD stage. Note that, a block (of size wsws) is taken around the processed pixel and this block is searched for in a larger search window (of size sw sw) in the preceding and succeeding frames according to the MSE criterion for local motion compensation. The proposed detection approach is referred to as two-stage SROD. Fig. 2 shows blotch detection results for a sample frame of the Silent test sequence with synthetic blotches, for SROD with two different threshold values and the proposed twostage SROD. It is clearly seen from Fig. 2 that the proposed two-stage SROD-detection technique reduces the number of false alarms compared to SROD, without losing actually degraded regions.
Fig. 2. (a) Image, (b) SROD output (T 1 = 5), (c) SROD output (T 1 = 10), (d) two-stage SROD output (T 1 = 5, T 2 = 10) for frame number of 67 of synthetically blotched Silent test sequence.
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
537
The proposed correction method works iteratively as follows: 1. Calculate correction priorities for each pixel on the contour of the blotch mask and decide which pixel(s) should be corrected rst. 2. Correct the corresponding pixel(s) and update the blotch mask. 3. Go to Step 1 if blotch mask includes any more pixel(s), else nish the correction.
2.2.1. Correction priority In order to prevent any bias and correctly restore the spatial structure, pixels contributing to important structural information (such as edges or textures) should be corrected before pixels falling into at regions. In other words pixels with high-spatial detail should have a higher priority. For this purpose, a correction priority (CP) measure is calculated for each pixel located on the contour of the blotch determined by the blotch mask b2 in order to decide the correction order. For each pixel located on the contour of the blotch, a CP value is calculated from the difference of maximum and minimum pixel values located outside the blotch in a block of size 3 3, as given CP(x, y) = max(I (x + i, y + j )) min(I (x + i, y + j )), i, j = {1, 0, 1} b2 (x + i, y + j ) = 0. (5) High or low values of CP indicate whether a pixel is located in a spatially detailed regions or not. The calculated CP values are sorted by decreasing number and the most
538
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
Fig. 5. Different iterations of the correction priority-based restoration for a given image frame.
important pixels are decided using a threshold (Tc ) as shown in Fig. 3. This gure shows the CP values sorted from high to low of blotched pixels. All pixels, that have CP values that are at most Tc away from the maximum value, i.e. max(CP) are corrected at the current stage (iteration). Note that, therefore the correction is carried out according to the importance order of corrupted pixels. After the correction operation, the b2 mask is updated removing corrected pixels and the correction stage is repeated until there are no more pixels to be corrected. A sample drawing of the correction priority measure calculation and correction strategy is shown in Fig. 4. Here, Fig. 4a shows a sample blotched region. Fig. 4b shows how the contour of the blotched region is constructed. Fig. 4c shows the calculation of CP values for pixels located on the counter. Fig. 4d shows the locations with highest priorities that are corrected rstly. An example correction priority-based restoration process for a blotched area of an image frame for the given iteration numbers are shown in Fig. 5. As it is seen from Fig. 5, the proposed correcting priority operation nds pixels
that are located in spatially detailed regions (particularly edges) and these are lled with higher priority. At each iteration typically blotched pixels located on the blotch counter having the highest CP values are corrected so that the correction process initially reconstructs regions with high spatial detail, avoiding these regions to be inuenced by at regions to recover the missing parts much more correctly. 2.2.2. Correction of pixels The proposed pixel correction method uses a luminance transformation-based matching criteria similar to [19] with spatio-temporal information. The proposed method is operated for a given pixel as follows: 1. Take a square window around the pixel position (local window). 2. Find the best-matching luminance-transformed remote window within larger search windows of preceding and succeeding image frames for the local window; skipping all blotched regions (Note that the centre pixel of the remote window should be non-blotched).
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
539
Fig. 6. Best-matched remote window searching strategy from previous and next image frames.
3. Put the centre pixel of the best-matched luminancetransformed remote window to the corrected image. In this work, MSE is used as a matching criterion in the form of MSE = 1 pu
M M
[(1 mr (i, j ))
i=1 j =1 l
The rst-order polynomial function used as luminance transform can be formulated as v(r(i, j )) = 0 + 1 r(i, j ), jMSE/j 0 = 0, jMSE/j 1 = 0. (7) In this equation a0 and a1 can be denoted as additive and multiplicative luminance transform coefcients, respectively, and these coefcients are computed as given
M M r l i=1 j =1 (1m (i, j ))(1m (i, j ))r(i, j )l(i, j ) M r l [ M i=1 j =1 (1 m (i, j )) (1 m (i, j )) r(i, j )] M r l [ M i=1 j =1 (1 m (i, j )) (1 m (i, j )) l(i, j )] , 1= M r l 2 pu M i=1 j =1 (1 m (i, j )) (1 m (i, j )) r (i, j ) M r l 2 [ M i=1 j =1 (1m (i, j ))(1m (i, j ))r(i, j )]
pu
pu =
i=1 j =1
(6)
where pu is the total number of used pixels, M is the window size, mr is the remote window blotch mask, ml is the local window blotch mask, l(i, j ) is a local window pixel, r(i, j ) is a remote window pixel, and v() is the luminance transform. The best matched remote window searching procedure is executed as shown in Fig. 6. This gure shows the best match to an example region in the current frame, in the previous and next image frames, within the shown larger search windows. To match the remote window to the local window using the MSE criterion, a rst-order polynomial function as given in (7) is used as the luminance transform, similar to [19].
(1 mr (i, j ))
i=1 j =1
(1 ml (i, j )) r(i, j ) .
(8)
The new value of a blotched pixel is then computed as Io (i, j ) = v(rbm ((M + 1)/2, (M + 1)/2)), M is an odd number. (9)
540
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
matching parts from available regions. It is seen from Fig. 7 that the proposed correction strategy successfully preserves edge information during the correction process.
3. Experimental results
Blotch detectors are generally compared in the literature using receiver operating characteristics (ROC). ROC, plots the correct detection rate (CDR) versus false alarm rate (FAR) for all possible variations of one parameter for a given method. CDR and FAR expressions are dened as CDR = NC , NC + N M FAR = NF , wh (10)
Fig. 7. Correction results for a part of frame no. 67 of the Hall Monitor sequence: (a) corrupted, (b) original, (c) CBCM [20], (d) proposed correction method.
where NC , NM and NF show the number of correctly detected, missed, and falsely detected pixels, respectively. Here (w h) is the image size. Fig. 8 shows ROC curves obtained for articially corrupted Silent test sequence using SDIa [11], SDIa with post-processing as proposed in [12], SDIa with segmentation-based post-processing as proposed in [20], SROD [14] and the proposed two-stage SROD method. It is seen in Fig. 8 that the proposed two-stage SROD method improves the correct detection rate of SROD and also reduces the false detection rate outperforming SDIa as well as SDIa with post-processing. Although the SDIa method with segmentation-based postprocessing as proposed in [20] gives better ROC curves in articially corrupted sequences, it has been observed that the method proposed in [20] can give an insufcient performance in archive lm sequences due to xed segmentation and completeness thresholds utilized in [20], which in particularly results in the miss of partly transparent blotches. On the other hand, the proposed two-stage SROD detector has been found to even detect partly transparent blotches successfully. Detection performance of the proposed two-stage
Here, Io (i, j ) is the corrected pixel value, and rbm is the best-matched remote window. Correction results for a part of frame no. 67 of the Hall Monitor sequence are shown in Fig. 7 to give an idea about the visual performance of the proposed correction method. The correction result of the contour-based correction method (CBCM) without spatial priority (i.e. when blotched pixels are corrected via a contour-based onion-peel strategy) as proposed in [20] is also given for this image frame for comparison. Note that part of the articially distorted region in this frame does not have real image correspondences in preceding and succeeding frames because of excessive local motion. Nonetheless, the blotch is successfully corrected with the proposed approach providing a reasonable visual appearance, using best-
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
541
Fig. 9. (a) Original image frame, and detection performances for (b) SDIa method with segmentation-based post-processing [10], (c) proposed two-stage SROD method.
Fig. 10. (a) MAD, and (b) PSNR results for the Silent test sequence.
Fig. 11. (a) MAD, and (b) PSNR results for the Hall Monitor test sequence.
542
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
Table 1. Mean values of the MSE and PSNR results for the Silent and Hall Monitor sequences Silent MMF [15] PSNR (dB) MAD 51.27 0.053 CBCM [20] 66.32 0.011 Prop. Method 68.85 0.010 Hall Monitor MMF [15] 58.68 0.015 CBCM [20] 63.20 0.091 Prop. Method 63.48 0.092
SROD method and the SDIa method with segmentationbased post-processing [20] for frame no. 45 of the Mount archive lm that includes transparent blotches are given in Fig. 9. As seen from Fig. 9, the method proposed in [20] cannot detect most of the partly transparent blotches because of transparency (look around the building in the image), consequently visual degradations cannot be restored effectively. The proposed approach is seen to successfully detect even partly transparent blotches. The correction performance of the proposed approach is compared to MMF [15] and the CBCM without spatial priority [20]. To provide objective criteria, the minimum absolute difference (MAD) and peak signal-to-noise ratio (PSNR) metrics are used. MAD and PSNR values for corrected Silent and Hall Monitor test sequences are given in Figs. 10 and 11, respectively. Note that these sequences are articially blotched and then corrected with the corresponding methods, while the MAD and PSNR measures are computed against the original image frames. A low MAD and a high PSNR value is desired for better performance. These gures show that the proposed correction method gives considerably better results compared to MMF in the overall. While the proposed method gives nearly the same MAD and PSNR results as [20], the visual quality obtained by the proposed correction method is much better (as seen also in Fig. 7). In Table 1, the average MAD and PSNR results for the Silent and Hall Monitor sequences are given for the compared methods. These results also conrm that the proposed method outperforms MMF and gives slightly better objective quality measures than [20].
considering important structural information is developed. Experimental results show that the proposed approaches give successful detection and correction performances and outperform previous techniques used for comparison.
Acknowledgement
This work was supported by the Scientic and Technological Research Council of Turkey (TUBITAK) under Grant EEEAG/103E007.
References
[1] Urhan O, Gullu MK, Erturk S. Modied phase-correlation based robust shot-cut detection with application to archive lm. IEEE Trans Circuits Syst Video Technol 2003;16: 75370. [2] Urhan O, Gullu MK, Erturk S. Shot-cut detection for b&w archive lms using best tting kernel. AEU Int J Electron Commun 2007;61:4638. [3] Van Roosmalen PMB, Lagendijk RL, Biemond J. Correction of intensity icker in old lm sequences. IEEE Trans Circuits Syst Video Technol 1999;9:10139. [4] Vlachos T. Flicker correction for archived lm sequences using a nonlinear model. IEEE Trans Circuits Syst Video Technol 2004;14:50816. [5] Joyeux L, Besserer B, Boukir S. Tracking and map reconstruction of line scratches in degraded motion pictures. Mach Vision Appl 2002;13:11928. [6] Gullu MK, Urhan O, Erturk S. Scratch detection via temporal coherency analysis and removal using edge priority based interpolation. In: IEEE international symposium on circuits and systems (ISCAS 2006); 2006. p. 45914. [7] Ozkan MK, Erdem AT, Sezan MI, Tekalp AM. Efcient multiframe Wiener restoration of blurred and noisy image sequences. IEEE Trans Image Process 2000;7:1735. [8] Gullu MK, Urhan O, Erturk S. Pixel domain spatiotemporal denoising for archive videos. Lect Notes Compt Sci 2006;4263:493502. [9] Gullu MK, Erturk S. Adaptive fuzzy lter for image sequence stabilization. IEEE Trans Consumer Electron 2004;50:17. [10] Erturk S. Real-time digital image stabilization using Kalman lters. Real-Time Imag 2002;8:31728. [11] Kokaram AC, Morris RD, Fitzgerald WJ, Rayner PJW. Detection of missing data in image sequences. IEEE Trans Image Process 1995;4:1496508.
4. Conclusion
In this work, new detection and correction methods for blotch restoration are proposed. A two-stage SROD detector that takes local motion changes and non-matching edges into consideration has been proposed to increase the blotch detection performance of the standard SROD approach. Pixel-based local motion compensation is carried out at the locations of blotch candidates detected by the initial SROD and a second SROD detector (with a higher threshold) is employed to make the nal decision. Furthermore a novel pixel-based correction method that determines the new values of blotched pixels from spatio-temporal correlation
M.K. Gullu et al. / Int. J. Electron. Commun. (AE) 62 (2008) 534 543
543
[12] Ghaderi M, Kasaei S. Novel post-processing methods used in detection of blotches in image sequences. AEU Int J Electron Commun 2004;58:5864. [13] Nadenau MJ, Mitra SK. Blotch and scratch detection in image sequences based on rank ordered differences. In: Cappelini V, editor. Time-varying image processing and moving object recognition. New York: Elsevier; 1997. [14] van Roosmalen PMB, Lagendijk RL, Biemond J. Improved blotch detection by postprocessing. In: Proceedings of IEEE signal processing symposium SPS98, Leuven, Belgium; 1998. p. 2236. [15] Kokaram AC, Morris RD, Fitzgerald WJ, Rayner PJW. Interpolation of missing data in image sequences. IEEE Trans Image Process 1995;4:150919. [16] Kokaram AC, Rayner PJW. Detection and interpolation of replacement noise in motion picture sequences using 3D autoregressive modeling. In: IEEE international symposium on circuits and systems; 1994. p. 214. [17] Efros AA, Leung TK. Texture synthesis by non-parametric sampling. In: Proceedings of IEEE international conference on computer vision (ICCV99), Corfu, Greece, vol. 2; 1999. p. 10338. [18] Criminisi A, Prez P, Toyama K. Region lling and object removal by examplar-based image inpainting. IEEE Trans Image Process 2004;13:120012. [19] Zhang D, Wang Z. Image information restoration based on long-range correlation. IEEE Trans Circuits Syst Video Technol 2002;12:33140. [20] Gullu MK, Urhan O, Erturk S. Blotch detection and removal for archive video restoration. Lect Notes Comput Sci, Springer, Heidelberg 2005;3733:73947. M. Kemal Gullu received his B.Sc., M.Sc., and Ph.D. degrees in Electronics and Telecommunications Engineering from the University of Kocaeli, Kocaeli, Turkey, in 2001, 2003, and 2006, respectively. His Ph.D. dissertation is about archive video restoration. Since 2002, he has been with the University of Kocaeli, Kocaeli, Turkey, where he is currently an Assistant Professor. His main research interests are in signal, image, and video processing, in particular image and video restoration and video stabilization.
Oguzhan Urhan received his B.Sc., M.Sc., and Ph.D. degrees in Electronics and Telecommunications Engineering from the University of Kocaeli, Kocaeli, Turkey, in 2001, 2003, and 2006, respectively. His Ph.D. dissertation is about segmentation and restoration of archive videos. Since 2001, he has been with the Department of Electronics and Telecommunications Engineering, University of Kocaeli, where he is currently an Assistant Professor. His research interests are in the area of digital signal and image processing, in particular image and video restoration and coding. Sarp Erturk received his B.Sc. degree in Electrical and Electronics Engineering from the Middle East Technical University, Ankara, Turkey, in 1995, and M.Sc. degree in Telecommunication and Information Systems and the Ph.D. degree in Electronic Systems Engineering from the University of Essex, UK, in 1996 and 1999, respectively. From 1999 to 2001 he carried out his compulsory service with the Army Academy, Ankara. Since 2001, he has been with the University of Kocaeli, Kocaeli, Turkey, where he is currently an Associate Professor. His research interests are in the area of digital signal and image processing.