8
Efficient Generation of Large Amounts of Training Data for Sign Language Recognition: A Semi-automatic Tool Ruiduo Yang 1 , Sudeep Sarkar 1 , Barbara Loeding 2 , and Arthur Karshmer 2 1 University of South Florida, Tampa, FL, 33620, USA 2 University of South Florida, Lakeland, FL, 33803, USA Abstract. We have developed a video hand segmentation tool which can help with generating hands ground truth from sign language image sequences. This tool may greatly facilitate research in the area of sign language recognition. In this tool, we offer a semi automatic scheme to assist with the localization of hand pixels, which is important for the purpose of recognition. A candidate hand generator is applied by using the mean shift image segmentation algorithm and a greedy seeds growing algorithm. After a number of hand candidates is generated, the user can reduce the candidates by simple mouse clicks. The tool also provides a hand tracking function for faster processing and a face detection function for groundtruthing non manual signals. In addition, we provided a two- passes groundtruthing scheme unlike other tools that only does one-pass. Our first pass processing is automatic and does not need user interaction. The experiment results demonstrate that based on the first pass’s result, one can groundtruth 10,000+ frames of sign language within 8 hours. 1 Introduction With the growing capacity of computer vision technology, there is more interest being directed towards the automatic recognition of sign language based solely on image sequences or videos. We refer the reader to [1] for a review of the applications of related vision technologies. Briefly, if an accurate and reliable method can be developed to recognize and translate from sign sentences to spo- ken or written languages, this will help alleviate communication difficulties that Deaf people experience daily. This method can be incorporated into an assistive device carried by the Deaf person or available within the computer systems of stores, banks and other places where a Deaf person needs to communicate with non-signers. In a vision-based sign language recognition system, generally a model will be trained on either a phoneme, sign or sentence level. This requires accurate feature extractions from the image frames. For example, one may need to extract the facial expression, hand position and hand shape parameters. However, the automatic hand segmentation is a challenging problem and unwanted noise will be generated for real world image sequences; hence the accuracy of the model K. Miesenberger et al. (Eds.): ICCHP 2006, LNCS 4061, pp. 635–642, 2006. c Springer-Verlag Berlin Heidelberg 2006

LNCS 4061 - Efficient Generation of Large Amounts of Training

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LNCS 4061 - Efficient Generation of Large Amounts of Training

Efficient Generation of Large Amountsof Training Data for Sign Language Recognition:

A Semi-automatic Tool

Ruiduo Yang1, Sudeep Sarkar1, Barbara Loeding2, and Arthur Karshmer2

1 University of South Florida, Tampa, FL, 33620, USA2 University of South Florida, Lakeland, FL, 33803, USA

Abstract. We have developed a video hand segmentation tool whichcan help with generating hands ground truth from sign language imagesequences. This tool may greatly facilitate research in the area of signlanguage recognition. In this tool, we offer a semi automatic scheme toassist with the localization of hand pixels, which is important for thepurpose of recognition. A candidate hand generator is applied by usingthe mean shift image segmentation algorithm and a greedy seeds growingalgorithm. After a number of hand candidates is generated, the user canreduce the candidates by simple mouse clicks. The tool also provides ahand tracking function for faster processing and a face detection functionfor groundtruthing non manual signals. In addition, we provided a two-passes groundtruthing scheme unlike other tools that only does one-pass.Our first pass processing is automatic and does not need user interaction.The experiment results demonstrate that based on the first pass’s result,one can groundtruth 10,000+ frames of sign language within 8 hours.

1 Introduction

With the growing capacity of computer vision technology, there is more interestbeing directed towards the automatic recognition of sign language based solelyon image sequences or videos. We refer the reader to [1] for a review of theapplications of related vision technologies. Briefly, if an accurate and reliablemethod can be developed to recognize and translate from sign sentences to spo-ken or written languages, this will help alleviate communication difficulties thatDeaf people experience daily. This method can be incorporated into an assistivedevice carried by the Deaf person or available within the computer systems ofstores, banks and other places where a Deaf person needs to communicate withnon-signers.

In a vision-based sign language recognition system, generally a model willbe trained on either a phoneme, sign or sentence level. This requires accuratefeature extractions from the image frames. For example, one may need to extractthe facial expression, hand position and hand shape parameters. However, theautomatic hand segmentation is a challenging problem and unwanted noise willbe generated for real world image sequences; hence the accuracy of the model

K. Miesenberger et al. (Eds.): ICCHP 2006, LNCS 4061, pp. 635–642, 2006.c© Springer-Verlag Berlin Heidelberg 2006

Page 2: LNCS 4061 - Efficient Generation of Large Amounts of Training

636 R. Yang et al.

can be decreased. For example, an automatic scheme for segmenting the handcan be based on hand color model [2], stereo depth [3], colored gloves [4] ormotion [5] information. Nevertheless, a hand color model is not sufficient for realworld images where a large variation of lighting condition exists. Alternativelyusing depth image is slow and will fail when the hand moves to the same planeas the body. In addition, colored gloves might help during training but it stillchanges the appearance of hand and makes the signer feel unnatural. And finally,although using motion information is usually robust, it cannot accommodatesubtle hand shape changes and a moving background. Due to these reasons, ahand groundtruthing step is often taken with an annotation tool before we startthe training. Sign language training databases generally consist of many videoshots and frames, which makes it very hard to groundtruth quickly using generalimage processing tool (e.g. Photoshop) frame by frame. Even with a vision basedvideo annotation tool, this task could be labor intensive and time-consuming.For example, considering a small training database that has 100 signs, each signhas 25 training samples and the average length of one training sample is 50frames. There are a total of 25x100x50=125000 frames. Suppose we were usinga general image processing tool which can generate groundtruth for one framein 5 min. The time cost to groundtruth the whole database will be 434 days.

In this paper, we offer a semi automatic scheme to assist with the localizationof hand pixels, which is important for the purpose of recognition. A candidatehand generator is applied by using the mean shift image segmentation algorithmand a greedy seeds growing algorithm. After a number of hand candidates is gen-erated, the user can reduce the candidates by simple mouse clicks. In addition, weprovided a two-passes groundtruthing scheme unlike other tool that only do one-pass. Our first pass processing is automatic and does not need user interaction.

We are aware of many other video annotation tools. However, most focus onscene segmentation or key frame detection (e.g. IBM EVA[6], ESP Game[7]).Some of them combine local feature extraction and temporal tracking together.For example, the VIPER annotation tool proposed by Pfund et.al [8] provides im-age segmentation, temporal segmentation and event annotation together; ViPer-GT proposed by Doermann et.al [9] can detect multiple objects and track themusing bounding boxes automatically, Marcotegui et.al proposed VOGUE [10],where a number of image and video segmentation techniques are incorporatedfor object annotation purpose. All of these tools are standalone applicationsproviding semi automatic groundtruthing function with user-friendly interface.

Our annotation tool is a side-product of our vision-based American Sign Lan-gugae(ASL) recognition system. It also provides a semi-automatic scheme forefficient ground-truthing. However, its main purpose is to segment the handpixels frame by frame. Instead of using the general segmentation and trackingalgorithm as in the existing tools, we advocate a candidate hand generator ap-proach which is more reliable during hand shape change and hand crossing facesituation. Unlike the existing tools where only one-pass is conducted, we offer atwo-pass scheme for faster processing, where the first pass generates candidatehands automatically.

Page 3: LNCS 4061 - Efficient Generation of Large Amounts of Training

Efficient Generation of Large Amounts of Training Data 637

12p

11p

13p

15p1

4p24p

23p

22p 3

2p21p

33p

36p

34p

35p

31p

SegmentedFrames

1I 2I 3IOriginalFrames

},{ 12

11

11 ppg =

},{ 13

12

12 ppg =

},{ 15

14

13 ppg =

},,{ 15

14

13

14 pppg =

}{ 11

15 pg =

},{ 14

13

16 ppg =

},{ 22

21

21 ppg =

},{ 23

22

22 ppg =

},,{ 24

23

22

23 pppg =

}{ 21

24 pg =

},{ 24

23

25 ppg =

},{ 32

31

31 ppg =

},{ 33

32

32 ppg =

},,{ 35

34

33

34 pppg =

},,{ 36

32

31

35 pppg =

},{ 36

35

36 ppg =

},{ 35

34

33 ppg =

Grouping

linksbetweengroups

(a) First Pass : Grouping},{ 1

211

11 ppg =

},{ 13

12

12 ppg =

},{ 15

14

13 ppg =

},,{ 15

14

13

14 pppg =

}{ 11

15 pg =

},{ 14

13

16 ppg =

},{ 22

21

21 ppg =

},{ 23

22

22 ppg =

},,{ 24

23

22

23 pppg =

}{ 21

24 pg =

},{ 24

23

25 ppg =

},{ 32

31

31 ppg =

},{ 33

32

32 ppg =

},,{ 35

34

33

34 pppg =

},,{ 36

32

31

35 pppg =

},{ 36

35

36 ppg =

},{ 35

34

33 ppg =

Groupinglayers and

linksbetweengroups

1I 2I 3IOriginalFrames

User Selection User SelectionUser SelectionTracking Tracking

(b) Second Pass: Selection

Fig. 1. Overview of the two-pass approach

Fig. 1 illustrates our two-pass scheme. In Fig. 1(a), ASL video frames arefirst segmented into seed primitives; these primitives are grouped by a groupingengine to generate overlapped candidate hand groups, where each group mayconsist of one or more primitives. This step is automatic and no user interaction isinvolved. In Fig. 1(b), where the second pass is taken, the grouped results will beloaded back for user’s examination. Note the number of generated groups couldbe huge, hence we allow the user to mouse click the hand region to reduce thenumber of candidates. At the same time a tracking method is also incorporatedamong adjacent frames to improve efficiency.

The paper is organized as follows: in section 2 we will discuss the algorithmused in the first-pass, Section 3 describes the Graphic User Interface(GUI), Sec-tion 4 shows us the experimental results and we conclude with Section 5.

2 First-Pass: Segmentation and Grouping

The first-pass annotation can be done completely on the background since thereis no user interaction involved. The goal of this pass is to generate the handcandidates and store them as a file to be reloaded in the second pass. For existing

Page 4: LNCS 4061 - Efficient Generation of Large Amounts of Training

638 R. Yang et al.

annotation tools, these two passes are generally working at the same time, forcingthe user to wait for the segmenting and tracking result. With a complex scene,the segmentation itself can be very time consuming. (e.g. a segmentation of onesingle frame with a highly textured scene with mean shift method [11] couldtake over 10 seconds). On the other hand, many tracking techniques take aniterative approach which could also be slow. Tracking methods also suffer fromthe requirement of good initialization, which must be taken for each sign in thetraining dataset separately.

For our case, since we tend to generate as many candidates as possible toaccommodate with the fast changing appearance of the hand while signing, theprocessing of one single frame will even be slower. For example, with a complexscene there will be over 500 candidate hands generated, which result in a runningtime for one frame to exceed 30 seconds.

Fortunately, unlike other tracking or hand segmentation schemes, our ap-proach does not require perfect results or user modification when the candidatehands are being detected. Hence this step can be done solely in the background.

2.1 Grouping of Primitives

We adopt a greedy approach to form the groups. Let us denote the low-levelregion patches in the k-th image frame by Sk = {pk

1 , · · · , pkNk

}. From this initialset of primitives, we select a subset of primitives that are likely to come fromthe hand, based on the size of the patch. These are our seed patches. Givensome knowledge of the approximate size of the hands in the sequence, we caneliminate large, non-homogeneous region patches from further consideration. Weuse a list L to store the possible groups. This list is initialized by choosing eachselected primitive to be a singleton group. These groups would be merged toform a larger conglomerate.

The grouping process starts by picking the first group in L, denoted hereby p, and searching for its neighbors {N i

p}. Each neighbor N ip is considered

for grouping with p to generate a tentative larger grouping. We select the bestlocal grouping, and denote it as g. The group g is further tested to see if it canpossibly represent a hand. If the group g passes this test, it is inserted into thefinal candidate group list, C, otherwise it is inserted at the end of the list L, tobe considered for further grouping.

2.2 Associating Groups Across Frames

We denote the jth group detected in tth frame as Gjt . The groups detected in

each frame are associated with those detected in previous frames to result in alinked sequence of groups spanning all the frames. We define the predecessorsset of each element in each groups set as

Pre(Gjt ) = [Gj1

t−1, · · · , Gjn

t−1], t ≥ 2, 1 ≤ jk ≤ ct−1, (1)

where Gjk

t−1 is one possible predecessor of Gjt . The predecessor relationship be-

tween the groups from different time instants is based on feature similarity. It

Page 5: LNCS 4061 - Efficient Generation of Large Amounts of Training

Efficient Generation of Large Amounts of Training Data 639

captures how likely the groups are from the same underlying cause in the image.We will use the best successors as the tracking result.

3 Second Pass: Graphic User Interface

After the candidate groups and their links are generated, user interaction isneeded to select the best group, with a default group given at each frame bythe tracking method. We provide functionality that specifically works well forsign sentences. These functions are built upon the candidate generator discussedin section 2, a simple tracking technique that work with the links between thecandidate groups, a face detector for non-manual information analysis, a glossingtool and various elements that facilitate the hand groundtruthing.

Fig. 2. The Graphic User Interface

The application is coded under the Microsoft Visual Studio Environment,using MFC class, OpenCV libraries and related windows APIs. Fig. 2 illustrateus the GUI. Important functions related to sign language are supported as:

1. 3 views of current frame: The first is the dominant hand view, the second isthe non-dominant hand view, the third is the view for both.

2. Click to select: One can click on the hand area to reduce the groups to beshown. The shown groups must include the point where the mouse is clicked.

3. Missing hand checkbox: One can choose the current hand as missing if thehand is out of the scene.

4. 2 Hand listboxes: The two listboxes below show the list of the candidatedominant hand and candidate non-dominant hands. The list is ranked bytheir boundary smoothness and the tracking result. The highlighted item isthe candidate hand that is being selected.

5. Face detector: automatic face detector, shown as the blue bounding box.

Page 6: LNCS 4061 - Efficient Generation of Large Amounts of Training

640 R. Yang et al.

6. Play,Stop,Step Button: Pressing the play button will automatically trackall the hands and save the result. Stop Button will stop the tracking. Stepbutton is to allow the application to track one frame and wait for the user’sresponse, which is most often used.

7. Redo Checkbox: Redo Checkbox allows one to re-detect the current sequence.

4 Experiment Result

We tested our annotation tool with 2 datasets with different parameters settings.Both of them consist of ASL sign sentences. The first dataset has a simplebackground with 10675 frames and a resolution of 460x290. On average thereare 100 candidate hands generated per frame for this dataset, yet it took usless than 8 hours to finish groundtruthing both hands. The second dataset hasa complex background with 640x480 resolution. There are 500 candidate handsgenerated for each frame. We took 500 frames and established the groundtruthwithin 1 hour. Note the time we refer to here is the user interaction time, thatis, the time of the second pass.

In Fig. 3(a), we show the time taken over the 2 datasets of the two passes.We use a P4 2.4G CPU with 4G memory. The number shown is the time takenper frame in seconds. Our first pass takes relatively longer since we incorporatedautomatic segmentation, face detection, and the greedy seeds growing algorithm.However it’s completed offline. The second pass is done by reloading the candi-date result, taking much shorter time.

Fig. 3. (a) Time taken of first pass and second pass (in seconds). (b) Time taken withdifferent method sets. (in seconds).

Page 7: LNCS 4061 - Efficient Generation of Large Amounts of Training

Efficient Generation of Large Amounts of Training Data 641

(a) (b) (c)

(d) (e) (f)

Fig. 4. (a) Original frame 1. (b) Segmented frame 1 (c) List of candidate groups inframe 1. (d) Original frame 2. (e) Segmented frame 2 (f) List of candidate groups inin frame 2.

On the other hand, Fig. 3(b) shows us the time taken for different methodsets of the tool. We choose 500 frames from the simple background set to do theexperiment. Here we refer to ”C” as the method that only uses the generatedresult, ”C+C” refers to using the click-to-select method to reduce the candidateset, ”C+T” refers to using candidate with tracking method, ”C++” refers tothe method of using candidate and both click-to-select and tracking method.Tracking contributes a lot because it exploits the temporal relationship. Theclick-to-select method does help when tracking failed. For example, when a largemotion happens, drastic hand shape changes and occlusion happens. At thesame time, we did an experiment, using wand tools in a image editing softwareto groundtruth 10 frames randomly chosen from the dataset. The average timetaken for each frame exceeds 3 min.

Fig. 4 shows us some visual results of the generated candidate hands. We cansee our method can discern the handshape even when there is occlusion andoverlaps. In particular, Fig. 4 (c) shows us the result where face crossed hand,and Fig. 4 (f) shows us where the two hands crossed each other.

5 Conclusion

In this paper, we describe our semi-automatic tool for annotating sign languagevideo sequences. The objective of this tool is to generate large amount of datawith labeled hand pixels that can provide reliable training process. The tool usessegmentation, tracking and offline processing method to considerably save the

Page 8: LNCS 4061 - Efficient Generation of Large Amounts of Training

642 R. Yang et al.

time to get the reliable hand data. For future work, an assisting edit tool canbe added to secure the situation when there are merges among hand pixels andnon-hand pixels where segmentation and grouping fail.

Acknowledgment

This work was supported in part by the National Science Foundation undergrant IIS 0312993. Any opinions, findings and conclusions or recommendationsexpressed in this material are those of the author(s) and do not necessarily reflectthose of the National Science Foundation.

References

1. B. L. Loeding, S. Sarkar, A. Parashar and A. I. Karshmer.: Progress in AutomatedComputer Recognition of Sign Language., Lecture Notes in Computer Science,3118(2004), 1079 - 1087

2. T. Starner, and J. Weaver and A. P. Pentland.: Real-time American Sign LanguageRecognition using Desk and Wearable Computer Based Video, IEEE Transactionson Pattern Analysis and Machine Intelligence, 12 (1998) 1371–1375.

3. L. V. Tsap and M. C. Shin.: Dynamic Disparity Adjustment and Histogram-BasedFiltering of Range Data for Fast 3-D Hand Tracking, Journal of Digital SignalProcessing, 14 (2004) 550–565.

4. A. Just and S. Marcel.: Two-Handed Gesture Recognition, IDIAP Research Insti-tute CH-1920, 2005, Martigny, Switzerland

5. M.H. Yang., N.Ahuja. and M. Tabb.: Extraction of 2D Motion Trajectories and itsApplication to Hand Gesture Recognition., IEEE Transactions on Pattern Analysisand Machine Intelligence, 24 (2002) 168–185.

6. T. Volkmer and J. R. Smith and A. Natsev.: A Web-based System for CollaborativeAnnotation of Large Image and Video Collections: An Evaluation and User Study,MULTIMEDIA ’05: Proceedings of the 13th annual ACM international conferenceon Multimedia, (2005) 892–901.

7. L. V. Ahn and L. Dabbish.: Labeling Images with a Computer Game. In Conferenceon Human Factors in Computing Systems (CHI) (2004) 319–326.

8. T. Pfund and S. M. Maillet. A Dynamic Multimedia Annotation tool. In G. Berettaand R. Schettini, editors, In Proceedings of SPIE Photonics West, Electronic Imag-ing 2002, Internet Imaging III, 4672 (2002) 216–224.

9. D. Doermann and D. Mihalcik. Tools and Techniques for Video Performance Eval-uation. In Proceedings of the IEEE International Conference on Pattern Recognis-tion (ICPR’00), 4 (2000) 167–170.

10. B. Marcotegui, P. Correia,A Video Object Generation Tool Allowing Friendly UserInteraction.,International Conference on Image Processing, 4 (1999) 391–395.

11. D. Comanicu and P. Meer.: Mean shift: A Robust Approach Toward Feature SpaceAnalysis., IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(2002) 603–619.