SlideShare ist ein Scribd-Unternehmen logo
1 von 83
Downloaden Sie, um offline zu lesen
Declarative Gesture Spotting Using
Inferred and Refined Control Points
Department of Computer Science, Vrije Universiteit Brussel (VUB)
               Lode Hoste      -    lhoste@vub.ac.be
               Brecht De Rooms - bderooms@vub.ac.be
               Beat Signer     -   bsigner@vub.ac.be



                                                               1
Gesture Classification


                          template



                         sample segment


             e.g. Dynamic Time Warping




                                          2
Gesture Classification


                          template



                         sample segment


             e.g. Dynamic Time Warping




                                          3
Gesture Classification




                         4
Gesture Classification




                         5
Gesture Classification




                         6
Gesture Classification




                         7
Gesture Classification




                         8
Gesture Classification




             Too Complex




                           9
Gesture Classification




Start?




                 We need gesture spotting




                        End?

                                            10
Gesture Classification




Start?




                 We need gesture spotting
               reduce amount of work for gesture
               classification




                          End?

                                                   11
Gesture Spotting

Goal:
   - High Recall
   - High Precision

Popular techniques:
   - Hidden Markov Models
   - Continuous Dynamic Programming




                                      12
Our Declarative Gesture Spotting Approach

     1. Automatically infer control points
           - from one representative sample
           - one shot learning
     2. Generate declarative code
Spotted?   - understandable and extensible spotting definitions
     3. Call a gesture classification algorithm




                                                                  13
Automatically Infer Control Points

One representative sample




                                        Z gesture


                                                    14
Automatically Infer Control Points

One representative sample
 - start with the first point




                                          Z gesture


                                                      15
Automatically Infer Control Points

One representative sample
 - start with the first point
 - search for the smallest angle
 - within a given time-frame




                                         Z gesture


                                                     16
Automatically Infer Control Points

One representative sample
 - start with the first point
 - search for the smallest angle
 - within a given time-frame




                                         Z gesture


                                                     17
Automatically Infer Control Points

One representative sample
 - start with the first point
 - search for the smallest angle
 - within a given time-frame
 - refine control points
    (optionally)




                                          Z gesture


                                                      18
Comprehensible Code Generation

Based on the inferred control points:




                                            19
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D) there   is a start point
                                             ?p1




                                                   20
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D) there   is a second point   ?p1   ?p2




                                                      21
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                         ?p1   ?p2
4   (test (< ?p1.time ?p2.time))

    temporal constraint:
       that comes after the start point




                                                  22
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                    ?p1   ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))

 spatial constraint:




                                                             23
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                        ?p1         ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
                                                     4
                                                               185
 spatial constraint:
     .. a circular area with centerpoint
           x: 185 y:4 (pixels)




                                                                       24
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                        ?p1         ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
                                                     4
                                                               185
 spatial constraint:
     .. a circular area with centerpoint
           x: 185 y:4 (pixels)
              and radious 76




                                                                       25
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                        ?p1         ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
                                                     4
                                                               185




                                                                       26
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                           ?p1         ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
                                                        4
6    ?p3 (Point2D)                                                185
7    (test (< ?p2.time ?p3.time))
8    (test (inside_control_point ?p1 ?p3 15 178 76))
9    ?p4 (Point2D)
10   (test (< ?p3.time ?p4.time))
11   (test (inside_control_point ?p1 ?p4 197 175 76))



                                                            ?p3           ?p4




                                                                          27
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                       ?p1   ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
6    ?p3 (Point2D)
7    (test (< ?p2.time ?p3.time))
8    (test (inside_control_point ?p1 ?p3 15 178 76))
9    ?p4 (Point2D)
10   (test (< ?p3.time ?p4.time))
11   (test (inside_control_point ?p1 ?p4 197 175 76))

       each point expressed relative to ?p1
                                                        ?p3     ?p4




                                                                28
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                       ?p1   ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
6    ?p3 (Point2D)
7    (test (< ?p2.time ?p3.time))
8    (test (inside_control_point ?p1 ?p3 15 178 76))
9    ?p4 (Point2D)
10   (test (< ?p3.time ?p4.time))
11   (test (inside_control_point ?p1 ?p4 197 175 76))

       temporal constraints:
         the points should be ordered                   ?p3     ?p4




                                                                29
Comprehensible Code Generation

 Based on the inferred control points:
1 (defrule symbol_z
2   ?p1 (Point2D)
3   ?p2 (Point2D)                                     ?p1   ?p2
4   (test (< ?p1.time ?p2.time))
5   (test (inside_control_point ?p1 ?p2 185 4 76))
6   ?p3 (Point2D)
7   (test (< ?p2.time ?p3.time))
8   (test (inside_control_point ?p1 ?p3 15 178 76))
9   ?p4 (Point2D)
10 (test (< ?p3.time ?p4.time))
11 (test (inside_control_point ?p1 ?p4 197 175 76))
12 =>
13    (call DynamicTimeWarping
14       (select-between ?p1.time ?p4.time)
15       (gesture-set “CharacterZ”))                  ?p3     ?p4

      call an external algorithm for classification

                                                              30
A State Machine is Not Enough


          template                    continuous stream
                                 State 1


State 1              State 2




State 3                State 4




                                                          31
A State Machine is Not Enough


          template               continuous stream
                                       State 2



State 1              State 2




State 3                State 4




                                                     32
A State Machine is Not Enough


          template               continuous stream
                                       State 2



State 1              State 2

                                       reset state machine?



State 3                State 4




                                                              33
A State Machine is Not Enough


          template               continuous stream
                                                  State 1


State 1              State 2

                                       reset state machine?



State 3                State 4




                                                              34
A State Machine is Not Enough


          template               continuous stream
                                                 State 1


State 1              State 2




State 3                State 4




                                                           35
A State Machine is Not Enough


          template               continuous stream
                                                 State 1


State 1              State 2




State 3                State 4




                                                           36
A State Machine is Not Enough


          template               continuous stream



State 1              State 2

                                       gesture overshot
                                           missed gesture


State 3                State 4




                                                         37
A State Machine is Not Enough


          template               continuous stream



State 1              State 2




State 3                State 4




                                                     38
A State Machine is Not Enough


          template               continuous stream



State 1              State 2

                                         refused by gesture
                                         classification



State 3                State 4




                                                          39
A State Machine is Not Enough


          template                    continuous stream



State 1              State 2

                                               refused by gesture
                                               classification



State 3                State 4
                                 overlapping gesture
                                   missed gesture



                                                                40
Incremental Evaluation of Every Possible Combination




        1 (defrule symbol_z
        2   ?p1 (Point2D)




                                                  41
Incremental Evaluation of Every Possible Combination




        1 (defrule symbol_z
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             42
Incremental Evaluation of Every Possible Combination



            1 (defrule symbol_z
            2   ?p1 (Point2D)




        1 (defrule symbol_z
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             43
Incremental Evaluation of Every Possible Combination



            1 (defrule symbol_z
            2   ?p1 (Point2D)




        1 (defrule symbol_z
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             44
Incremental Evaluation of Every Possible Combination
            1 (defrule symbol_z
            2   ?p1 (Point2D)


            1 (defrule symbol_z
            2   ?p1 (Point2D)
            3   ?p2 (Point2D)



        1 (defrule symbol_z
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             45
Incremental Evaluation of Every Possible Combination
            1 (defrule symbol_z
            2   ?p1 (Point2D)


            1 (defrule symbol_z
            2   ?p1 (Point2D)
            3   ?p2 (Point2D)
                                  1 (defrule symbol_z
                                  2   ?p1 (Point2D)
        1 (defrule symbol_z       3   ?p2 (Point2D)
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             46
Incremental Evaluation of Every Possible Combination
            1 (defrule symbol_z
            2   ?p1 (Point2D)


            1 (defrule symbol_z
            2   ?p1 (Point2D)
            3   ?p2 (Point2D)
                                  1 (defrule symbol_z
                                  2   ?p1 (Point2D)
        1 (defrule symbol_z       3   ?p2 (Point2D)
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))




                                                             47
Incremental Evaluation of Every Possible Combination
            1 (defrule symbol_z
            2   ?p1 (Point2D)


            1 (defrule symbol_z
            2   ?p1 (Point2D)
            3   ?p2 (Point2D)
                                  1 (defrule symbol_z
                                  2   ?p1 (Point2D)
        1 (defrule symbol_z       3   ?p2 (Point2D)
        2   ?p1 (Point2D)
        3   ?p2 (Point2D)
        4   (test (< ?p1.time ?p2.time))
        5   (test (inside_control_point ?p1 ?p2 185 4 76))



   RETE engine takes care
   of caching intermediate calculations


                                                             48
Incremental Evaluation of Every Possible Combination




 ?p1




                                                  49
Incremental Evaluation of Every Possible Combination




       ?p1


 ?p1




                                                  50
Incremental Evaluation of Every Possible Combination




   ?p1


         ?p1


 ?p1




                                                  51
Incremental Evaluation of Every Possible Combination




   ?p1


         ?p1


 ?p1




                                                  52
Incremental Evaluation of Every Possible Combination




   ?p1


         ?p1


 ?p1




                                                  53
Incremental Evaluation of Every Possible Combination
               ?p1




   ?p1


         ?p1


 ?p1




                                                  54
Incremental Evaluation of Every Possible Combination
                             ?p2
               ?p1




   ?p1


         ?p1


 ?p1




                                                  55
Incremental Evaluation of Every Possible Combination
                                ?p2
               ?p1
                          ?p1




   ?p1


         ?p1


 ?p1




                                                  56
Incremental Evaluation of Every Possible Combination
                                 ?p2
                     ?p1
                           ?p1




   ?p1


         ?p1
               ?p3


 ?p1




                                                  57
Incremental Evaluation of Every Possible Combination
                                 ?p2
                     ?p1
                           ?p1




   ?p1


         ?p1
               ?p3


 ?p1




                                                  58
Incremental Evaluation of Every Possible Combination
                                 ?p2
                     ?p1
                           ?p1




   ?p1


         ?p1
               ?p3


 ?p1




                                                  59
Incremental Evaluation of Every Possible Combination
                                       ?p2
                     ?p1
                                 ?p1
                           ?p1




   ?p1


         ?p1
               ?p3


 ?p1




                                                  60
Incremental Evaluation of Every Possible Combination
                                             ?p2
                     ?p1
                                       ?p1
                                 ?p1
                           ?p2




   ?p1


         ?p1
               ?p3


 ?p1




                                                   61
Incremental Evaluation of Every Possible Combination
                                            ?p2
                    ?p1
                                      ?p1
                                ?p1
                          ?p2




   ?p1


        ?p1
              ?p3
       ?p3

 ?p1




                                                  62
Incremental Evaluation of Every Possible Combination
                                            ?p2
                    ?p1
                                      ?p1
                                ?p1
                          ?p2

                                             Limit calculations to
                                             a sliding window
   ?p1


        ?p1
              ?p3
       ?p3

 ?p1




                                                                 63
Incremental Evaluation of Every Possible Combination
                                          ?p2
                  ?p1
                                    ?p1
                              ?p1
                        ?p2

                                           Limit calculations to
                                           a sliding window
   ?p1


      ?p1
            ?p3
     ?p3




                                                               64
Incremental Evaluation of Every Possible Combination
                                         ?p2
                 ?p1
                                   ?p1
                             ?p1
                       ?p2

                                          Limit calculations to
                                          a sliding window
   ?p1



           ?p3
     ?p3




                                                              65
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window
   ?p1



           ?p3 ?p1
     ?p3




                                                            66
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window
   ?p1



           ?p3 ?p1                     ?p4
     ?p3




                                                            67
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window


           ?p3 ?p1                     ?p4
     ?p3




                                                            68
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window


           ?p3 ?p1                     ?p4
     ?p3




                                                            69
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window


           ?p3 ?p1                     ?p4
     ?p3




                                                            70
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window

                                        ?p2

           ?p3 ?p1                     ?p4
     ?p3




                                                            71
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window

                                        ?p2

           ?p3 ?p1                     ?p4
     ?p3




                                                            72
Incremental Evaluation of Every Possible Combination
                                       ?p2
               ?p1
                                 ?p1
                           ?p1
                     ?p2

                                        Limit calculations to
                                        a sliding window

                                        ?p2

           ?p3 ?p1                     ?p4
     ?p3




                                                            73
Extending the ‘Flick Right’ Definition
       Reducing false positives using negation

        ?p1              ?p2          ?p3




                                                 74
Extending the ‘Flick Right’ Definition
       Reducing false positives using negation

        ?p1              ?p2          ?p3




                                                 75
Extending the ‘Flick Right’ Definition




          ?p1          ?p2         ?p3




                                         76
Extending the ‘Flick Right’ Definition




                   ?p1               ?p2                   ?p3




(not
   (and
     (Point2D   (y ?b y) (time ?b time)) … there   should not be a point where the …
     (test (<   ?b time ?p3.time))
     (test (>   ?b time ?p1.time))
     (test (>   (abs (- ?p1.y ?b y)) 245))))


                                                                                  77
Extending the ‘Flick Right’ Definition




                   ?p1               ?p2                ?p3




(not
   (and
     (Point2D   (y ?b y) (time ?b time)) … there should not be a point where the   …
     (test (<   ?b time ?p3.time))
                                         … time lies in between ?p1 and ?p3 …
     (test (>   ?b time ?p1.time))
     (test (>   (abs (- ?p1.y ?b y)) 245))))


                                                                                   78
Extending the ‘Flick Right’ Definition




          y
                   ?p1                ?p2                ?p3
          y




(not
   (and
     (Point2D   (y ?b y) (time ?b time)) … there should not be a point where the …
     (test (<   ?b time ?p3.time))
                                         … time lies in between ?p1 and ?p3 …
     (test (>   ?b time ?p1.time))
     (test (>   (abs (- ?p1.y ?b y)) 245)))) … for which      y is greater than 245.

                                                                                  79
Evaluation
22   77.50   52.10   78.75   56.50
24   83.13   47.16   84.38   52.53
26   90.63   42.40   91.25   46.79
28   93.75   39.47   94.38   43.26
30   97.50   35.37   97.50   39.29
32   98.75   32.78   98.75   36.41




                             • 16 gestures
                             • 1760 gesture samples
                             • 10 subjects
                                                 80
Future Work

Scale / rotational            Visual 3D gesture
invariant spotting            definitions




                                                  81
Summary
                lhoste@vub.ac.be bderooms@vub.ac.be   bsigner@vub.ac.be




Auto infer control points        Generate Spotting Code               Call classification




     •   Extensive spotting: support for real-time continuous streams.
     •   No gesture overshooting: support for overlapping submatches.
     •   Comprehensible: easy to understand and to correct.
     •   Extensible: allows for expert adjustments.


                                                                                            82
Lode Hoste, Brecht De Rooms
and Beat Signer, Declarative
Gesture Spotting Using
Inferred and Refined Control
Points, Proceedings of
ICPRAM 2013, International
Conference on Pattern
Recognition, Barcelona, Spain,
February 2013


                                 83

Weitere ähnliche Inhalte

Was ist angesagt?

GCC Summit 2010
GCC Summit 2010GCC Summit 2010
GCC Summit 2010regehr
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLE2MATRIX
 
Lecture 2 verilog
Lecture 2   verilogLecture 2   verilog
Lecture 2 verilogvenravi10
 
Delays in verilog
Delays in verilogDelays in verilog
Delays in verilogJITU MISTRY
 
Shop 2 presentation slide
Shop 2 presentation slideShop 2 presentation slide
Shop 2 presentation slideAndrea Tucci
 
Digital system design practical file
Digital system design practical fileDigital system design practical file
Digital system design practical fileArchita Misra
 
Verilog 語法教學
Verilog 語法教學 Verilog 語法教學
Verilog 語法教學 艾鍗科技
 
radix_4 fft dif with mdc and mdf
radix_4 fft dif with mdc and mdfradix_4 fft dif with mdc and mdf
radix_4 fft dif with mdc and mdfsakthi1986
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomizationNirav Desai
 
OWF12/PAUG Conf Days Pro guard optimizer and obfuscator for android, eric l...
OWF12/PAUG Conf Days Pro guard   optimizer and obfuscator for android, eric l...OWF12/PAUG Conf Days Pro guard   optimizer and obfuscator for android, eric l...
OWF12/PAUG Conf Days Pro guard optimizer and obfuscator for android, eric l...Paris Open Source Summit
 
Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014Béo Tú
 

Was ist angesagt? (20)

VHDL CODE
VHDL CODE VHDL CODE
VHDL CODE
 
GCC Summit 2010
GCC Summit 2010GCC Summit 2010
GCC Summit 2010
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDL
 
Lecture 2 verilog
Lecture 2   verilogLecture 2   verilog
Lecture 2 verilog
 
Delays in verilog
Delays in verilogDelays in verilog
Delays in verilog
 
Crash course in verilog
Crash course in verilogCrash course in verilog
Crash course in verilog
 
Session1
Session1Session1
Session1
 
180809
180809180809
180809
 
Htn in videogames
Htn in videogamesHtn in videogames
Htn in videogames
 
Praktek ARDUINO
Praktek ARDUINOPraktek ARDUINO
Praktek ARDUINO
 
Shop 2 presentation slide
Shop 2 presentation slideShop 2 presentation slide
Shop 2 presentation slide
 
Digital system design practical file
Digital system design practical fileDigital system design practical file
Digital system design practical file
 
Verilog 語法教學
Verilog 語法教學 Verilog 語法教學
Verilog 語法教學
 
radix_4 fft dif with mdc and mdf
radix_4 fft dif with mdc and mdfradix_4 fft dif with mdc and mdf
radix_4 fft dif with mdc and mdf
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomization
 
Programs of VHDL
Programs of VHDLPrograms of VHDL
Programs of VHDL
 
OWF12/PAUG Conf Days Pro guard optimizer and obfuscator for android, eric l...
OWF12/PAUG Conf Days Pro guard   optimizer and obfuscator for android, eric l...OWF12/PAUG Conf Days Pro guard   optimizer and obfuscator for android, eric l...
OWF12/PAUG Conf Days Pro guard optimizer and obfuscator for android, eric l...
 
Bluespec @waseda
Bluespec @wasedaBluespec @waseda
Bluespec @waseda
 
VERILOG CODE
VERILOG CODEVERILOG CODE
VERILOG CODE
 
Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014Verilog Lecture3 hust 2014
Verilog Lecture3 hust 2014
 

Ähnlich wie Declarative Gesture Spotting Using Inferred and Refined Control Points

Pharo Virtual Machine: News from the Front
Pharo Virtual Machine: News from the FrontPharo Virtual Machine: News from the Front
Pharo Virtual Machine: News from the FrontESUG
 
Tdd with python unittest for embedded c
Tdd with python unittest for embedded cTdd with python unittest for embedded c
Tdd with python unittest for embedded cBenux Wei
 
Eclipse Day India 2015 - Java bytecode analysis and JIT
Eclipse Day India 2015 - Java bytecode analysis and JITEclipse Day India 2015 - Java bytecode analysis and JIT
Eclipse Day India 2015 - Java bytecode analysis and JITEclipse Day India
 
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Data Con LA
 
OpenMI Developers Training
OpenMI Developers TrainingOpenMI Developers Training
OpenMI Developers TrainingJan Gregersen
 
OpenMI Developers Training
OpenMI Developers TrainingOpenMI Developers Training
OpenMI Developers TrainingJan Gregersen
 
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander NasonovMultiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonoveurobsdcon
 
Monkey-patching in Python: a magic trick or a powerful tool?
Monkey-patching in Python: a magic trick or a powerful tool?Monkey-patching in Python: a magic trick or a powerful tool?
Monkey-patching in Python: a magic trick or a powerful tool?Elizaveta Shashkova
 
IL2CPP: Debugging and Profiling
IL2CPP: Debugging and ProfilingIL2CPP: Debugging and Profiling
IL2CPP: Debugging and Profilingjoncham
 
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)Igalia
 
Code Difference Visualization by a Call Tree
Code Difference Visualization by a Call TreeCode Difference Visualization by a Call Tree
Code Difference Visualization by a Call TreeKamiya Toshihiro
 
Windbg랑 친해지기
Windbg랑 친해지기Windbg랑 친해지기
Windbg랑 친해지기Ji Hun Kim
 
Verilog for synthesis - combinational rev a.pdf
Verilog for synthesis - combinational rev a.pdfVerilog for synthesis - combinational rev a.pdf
Verilog for synthesis - combinational rev a.pdfAzeemMohammedAbdul
 
So You Want To Write Your Own Benchmark
So You Want To Write Your Own BenchmarkSo You Want To Write Your Own Benchmark
So You Want To Write Your Own BenchmarkDror Bereznitsky
 
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...Stefan Marr
 
Code lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzCode lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzIvan Krylov
 
Building High-Performance Language Implementations With Low Effort
Building High-Performance Language Implementations With Low EffortBuilding High-Performance Language Implementations With Low Effort
Building High-Performance Language Implementations With Low EffortStefan Marr
 
Class 17: Golden Sneezewort
Class 17: Golden SneezewortClass 17: Golden Sneezewort
Class 17: Golden SneezewortDavid Evans
 

Ähnlich wie Declarative Gesture Spotting Using Inferred and Refined Control Points (20)

Pharo Virtual Machine: News from the Front
Pharo Virtual Machine: News from the FrontPharo Virtual Machine: News from the Front
Pharo Virtual Machine: News from the Front
 
Tdd with python unittest for embedded c
Tdd with python unittest for embedded cTdd with python unittest for embedded c
Tdd with python unittest for embedded c
 
Eclipse Day India 2015 - Java bytecode analysis and JIT
Eclipse Day India 2015 - Java bytecode analysis and JITEclipse Day India 2015 - Java bytecode analysis and JIT
Eclipse Day India 2015 - Java bytecode analysis and JIT
 
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
 
OpenMI Developers Training
OpenMI Developers TrainingOpenMI Developers Training
OpenMI Developers Training
 
OpenMI Developers Training
OpenMI Developers TrainingOpenMI Developers Training
OpenMI Developers Training
 
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander NasonovMultiplatform JIT Code Generator for NetBSD by Alexander Nasonov
Multiplatform JIT Code Generator for NetBSD by Alexander Nasonov
 
Monkey-patching in Python: a magic trick or a powerful tool?
Monkey-patching in Python: a magic trick or a powerful tool?Monkey-patching in Python: a magic trick or a powerful tool?
Monkey-patching in Python: a magic trick or a powerful tool?
 
IL2CPP: Debugging and Profiling
IL2CPP: Debugging and ProfilingIL2CPP: Debugging and Profiling
IL2CPP: Debugging and Profiling
 
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)
Good news, everybody! Guile 2.2 performance notes (FOSDEM 2016)
 
IOS debugging
IOS debuggingIOS debugging
IOS debugging
 
Code Difference Visualization by a Call Tree
Code Difference Visualization by a Call TreeCode Difference Visualization by a Call Tree
Code Difference Visualization by a Call Tree
 
Windbg랑 친해지기
Windbg랑 친해지기Windbg랑 친해지기
Windbg랑 친해지기
 
Verilog for synthesis - combinational rev a.pdf
Verilog for synthesis - combinational rev a.pdfVerilog for synthesis - combinational rev a.pdf
Verilog for synthesis - combinational rev a.pdf
 
So You Want To Write Your Own Benchmark
So You Want To Write Your Own BenchmarkSo You Want To Write Your Own Benchmark
So You Want To Write Your Own Benchmark
 
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
 
Code lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzCode lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf Linz
 
Building High-Performance Language Implementations With Low Effort
Building High-Performance Language Implementations With Low EffortBuilding High-Performance Language Implementations With Low Effort
Building High-Performance Language Implementations With Low Effort
 
Class 17: Golden Sneezewort
Class 17: Golden SneezewortClass 17: Golden Sneezewort
Class 17: Golden Sneezewort
 
Gcc porting
Gcc portingGcc porting
Gcc porting
 

Mehr von Beat Signer

Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Beat Signer
 
Indoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkIndoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkBeat Signer
 
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Beat Signer
 
Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Beat Signer
 
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Beat Signer
 
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaCodeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaBeat Signer
 
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions Beat Signer
 
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Beat Signer
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Beat Signer
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Beat Signer
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...Beat Signer
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Beat Signer
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Beat Signer
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Beat Signer
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Beat Signer
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Beat Signer
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Beat Signer
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Beat Signer
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Beat Signer
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationBeat Signer
 

Mehr von Beat Signer (20)

Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
 
Indoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkIndoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS Framework
 
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
 
Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...
 
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
 
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaCodeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
 
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
 
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data Physicalisation
 

Kürzlich hochgeladen

Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsSumit Kumar yadav
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxgindu3009
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )aarthirajkumar25
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Lokesh Kothari
 
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisRaman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisDiwakar Mishra
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Sérgio Sacani
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptxanandsmhk
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRDelhi Call girls
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...Sérgio Sacani
 
Orientation, design and principles of polyhouse
Orientation, design and principles of polyhouseOrientation, design and principles of polyhouse
Orientation, design and principles of polyhousejana861314
 
G9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptG9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptMAESTRELLAMesa2
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
Cultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxCultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxpradhanghanshyam7136
 
Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxUmerFayaz5
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfnehabiju2046
 
Formation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksFormation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksSérgio Sacani
 
Boyles law module in the grade 10 science
Boyles law module in the grade 10 scienceBoyles law module in the grade 10 science
Boyles law module in the grade 10 sciencefloriejanemacaya1
 
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCESTERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCEPRINCE C P
 
Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Patrick Diehl
 

Kürzlich hochgeladen (20)

Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )
 
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
Labelling Requirements and Label Claims for Dietary Supplements and Recommend...
 
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral AnalysisRaman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
Raman spectroscopy.pptx M Pharm, M Sc, Advanced Spectral Analysis
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
Orientation, design and principles of polyhouse
Orientation, design and principles of polyhouseOrientation, design and principles of polyhouse
Orientation, design and principles of polyhouse
 
G9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.pptG9 Science Q4- Week 1-2 Projectile Motion.ppt
G9 Science Q4- Week 1-2 Projectile Motion.ppt
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
Engler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomyEngler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomy
 
Cultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptxCultivation of KODO MILLET . made by Ghanshyam pptx
Cultivation of KODO MILLET . made by Ghanshyam pptx
 
Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptx
 
A relative description on Sonoporation.pdf
A relative description on Sonoporation.pdfA relative description on Sonoporation.pdf
A relative description on Sonoporation.pdf
 
Formation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disksFormation of low mass protostars and their circumstellar disks
Formation of low mass protostars and their circumstellar disks
 
Boyles law module in the grade 10 science
Boyles law module in the grade 10 scienceBoyles law module in the grade 10 science
Boyles law module in the grade 10 science
 
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCESTERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
STERILITY TESTING OF PHARMACEUTICALS ppt by DR.C.P.PRINCE
 
Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?Is RISC-V ready for HPC workload? Maybe?
Is RISC-V ready for HPC workload? Maybe?
 

Declarative Gesture Spotting Using Inferred and Refined Control Points

  • 1. Declarative Gesture Spotting Using Inferred and Refined Control Points Department of Computer Science, Vrije Universiteit Brussel (VUB) Lode Hoste - lhoste@vub.ac.be Brecht De Rooms - bderooms@vub.ac.be Beat Signer - bsigner@vub.ac.be 1
  • 2. Gesture Classification template sample segment e.g. Dynamic Time Warping 2
  • 3. Gesture Classification template sample segment e.g. Dynamic Time Warping 3
  • 9. Gesture Classification Too Complex 9
  • 10. Gesture Classification Start? We need gesture spotting End? 10
  • 11. Gesture Classification Start? We need gesture spotting reduce amount of work for gesture classification End? 11
  • 12. Gesture Spotting Goal: - High Recall - High Precision Popular techniques: - Hidden Markov Models - Continuous Dynamic Programming 12
  • 13. Our Declarative Gesture Spotting Approach 1. Automatically infer control points - from one representative sample - one shot learning 2. Generate declarative code Spotted? - understandable and extensible spotting definitions 3. Call a gesture classification algorithm 13
  • 14. Automatically Infer Control Points One representative sample Z gesture 14
  • 15. Automatically Infer Control Points One representative sample - start with the first point Z gesture 15
  • 16. Automatically Infer Control Points One representative sample - start with the first point - search for the smallest angle - within a given time-frame Z gesture 16
  • 17. Automatically Infer Control Points One representative sample - start with the first point - search for the smallest angle - within a given time-frame Z gesture 17
  • 18. Automatically Infer Control Points One representative sample - start with the first point - search for the smallest angle - within a given time-frame - refine control points (optionally) Z gesture 18
  • 19. Comprehensible Code Generation Based on the inferred control points: 19
  • 20. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) there is a start point ?p1 20
  • 21. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) there is a second point ?p1 ?p2 21
  • 22. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) temporal constraint: that comes after the start point 22
  • 23. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) spatial constraint: 23
  • 24. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 4 185 spatial constraint: .. a circular area with centerpoint x: 185 y:4 (pixels) 24
  • 25. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 4 185 spatial constraint: .. a circular area with centerpoint x: 185 y:4 (pixels) and radious 76 25
  • 26. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 4 185 26
  • 27. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 4 6 ?p3 (Point2D) 185 7 (test (< ?p2.time ?p3.time)) 8 (test (inside_control_point ?p1 ?p3 15 178 76)) 9 ?p4 (Point2D) 10 (test (< ?p3.time ?p4.time)) 11 (test (inside_control_point ?p1 ?p4 197 175 76)) ?p3 ?p4 27
  • 28. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 6 ?p3 (Point2D) 7 (test (< ?p2.time ?p3.time)) 8 (test (inside_control_point ?p1 ?p3 15 178 76)) 9 ?p4 (Point2D) 10 (test (< ?p3.time ?p4.time)) 11 (test (inside_control_point ?p1 ?p4 197 175 76)) each point expressed relative to ?p1 ?p3 ?p4 28
  • 29. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 6 ?p3 (Point2D) 7 (test (< ?p2.time ?p3.time)) 8 (test (inside_control_point ?p1 ?p3 15 178 76)) 9 ?p4 (Point2D) 10 (test (< ?p3.time ?p4.time)) 11 (test (inside_control_point ?p1 ?p4 197 175 76)) temporal constraints: the points should be ordered ?p3 ?p4 29
  • 30. Comprehensible Code Generation Based on the inferred control points: 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) ?p1 ?p2 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 6 ?p3 (Point2D) 7 (test (< ?p2.time ?p3.time)) 8 (test (inside_control_point ?p1 ?p3 15 178 76)) 9 ?p4 (Point2D) 10 (test (< ?p3.time ?p4.time)) 11 (test (inside_control_point ?p1 ?p4 197 175 76)) 12 => 13 (call DynamicTimeWarping 14 (select-between ?p1.time ?p4.time) 15 (gesture-set “CharacterZ”)) ?p3 ?p4 call an external algorithm for classification 30
  • 31. A State Machine is Not Enough template continuous stream State 1 State 1 State 2 State 3 State 4 31
  • 32. A State Machine is Not Enough template continuous stream State 2 State 1 State 2 State 3 State 4 32
  • 33. A State Machine is Not Enough template continuous stream State 2 State 1 State 2 reset state machine? State 3 State 4 33
  • 34. A State Machine is Not Enough template continuous stream State 1 State 1 State 2 reset state machine? State 3 State 4 34
  • 35. A State Machine is Not Enough template continuous stream State 1 State 1 State 2 State 3 State 4 35
  • 36. A State Machine is Not Enough template continuous stream State 1 State 1 State 2 State 3 State 4 36
  • 37. A State Machine is Not Enough template continuous stream State 1 State 2 gesture overshot  missed gesture State 3 State 4 37
  • 38. A State Machine is Not Enough template continuous stream State 1 State 2 State 3 State 4 38
  • 39. A State Machine is Not Enough template continuous stream State 1 State 2 refused by gesture classification State 3 State 4 39
  • 40. A State Machine is Not Enough template continuous stream State 1 State 2 refused by gesture classification State 3 State 4 overlapping gesture  missed gesture 40
  • 41. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 41
  • 42. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 42
  • 43. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 43
  • 44. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 44
  • 45. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 45
  • 46. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 3 ?p2 (Point2D) 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 46
  • 47. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 3 ?p2 (Point2D) 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) 47
  • 48. Incremental Evaluation of Every Possible Combination 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 3 ?p2 (Point2D) 1 (defrule symbol_z 2 ?p1 (Point2D) 1 (defrule symbol_z 3 ?p2 (Point2D) 2 ?p1 (Point2D) 3 ?p2 (Point2D) 4 (test (< ?p1.time ?p2.time)) 5 (test (inside_control_point ?p1 ?p2 185 4 76)) RETE engine takes care of caching intermediate calculations 48
  • 49. Incremental Evaluation of Every Possible Combination ?p1 49
  • 50. Incremental Evaluation of Every Possible Combination ?p1 ?p1 50
  • 51. Incremental Evaluation of Every Possible Combination ?p1 ?p1 ?p1 51
  • 52. Incremental Evaluation of Every Possible Combination ?p1 ?p1 ?p1 52
  • 53. Incremental Evaluation of Every Possible Combination ?p1 ?p1 ?p1 53
  • 54. Incremental Evaluation of Every Possible Combination ?p1 ?p1 ?p1 ?p1 54
  • 55. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 55
  • 56. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 ?p1 56
  • 57. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 ?p3 ?p1 57
  • 58. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 ?p3 ?p1 58
  • 59. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 ?p3 ?p1 59
  • 60. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p1 ?p1 ?p3 ?p1 60
  • 61. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 ?p1 ?p1 ?p3 ?p1 61
  • 62. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 ?p1 ?p1 ?p3 ?p3 ?p1 62
  • 63. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p1 ?p1 ?p3 ?p3 ?p1 63
  • 64. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p1 ?p1 ?p3 ?p3 64
  • 65. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p1 ?p3 ?p3 65
  • 66. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p1 ?p3 ?p1 ?p3 66
  • 67. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p1 ?p3 ?p1 ?p4 ?p3 67
  • 68. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p3 ?p1 ?p4 ?p3 68
  • 69. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p3 ?p1 ?p4 ?p3 69
  • 70. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p3 ?p1 ?p4 ?p3 70
  • 71. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p2 ?p3 ?p1 ?p4 ?p3 71
  • 72. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p2 ?p3 ?p1 ?p4 ?p3 72
  • 73. Incremental Evaluation of Every Possible Combination ?p2 ?p1 ?p1 ?p1 ?p2 Limit calculations to a sliding window ?p2 ?p3 ?p1 ?p4 ?p3 73
  • 74. Extending the ‘Flick Right’ Definition Reducing false positives using negation ?p1 ?p2 ?p3 74
  • 75. Extending the ‘Flick Right’ Definition Reducing false positives using negation ?p1 ?p2 ?p3 75
  • 76. Extending the ‘Flick Right’ Definition ?p1 ?p2 ?p3 76
  • 77. Extending the ‘Flick Right’ Definition ?p1 ?p2 ?p3 (not (and (Point2D (y ?b y) (time ?b time)) … there should not be a point where the … (test (< ?b time ?p3.time)) (test (> ?b time ?p1.time)) (test (> (abs (- ?p1.y ?b y)) 245)))) 77
  • 78. Extending the ‘Flick Right’ Definition ?p1 ?p2 ?p3 (not (and (Point2D (y ?b y) (time ?b time)) … there should not be a point where the … (test (< ?b time ?p3.time)) … time lies in between ?p1 and ?p3 … (test (> ?b time ?p1.time)) (test (> (abs (- ?p1.y ?b y)) 245)))) 78
  • 79. Extending the ‘Flick Right’ Definition y ?p1 ?p2 ?p3 y (not (and (Point2D (y ?b y) (time ?b time)) … there should not be a point where the … (test (< ?b time ?p3.time)) … time lies in between ?p1 and ?p3 … (test (> ?b time ?p1.time)) (test (> (abs (- ?p1.y ?b y)) 245)))) … for which y is greater than 245. 79
  • 80. Evaluation 22 77.50 52.10 78.75 56.50 24 83.13 47.16 84.38 52.53 26 90.63 42.40 91.25 46.79 28 93.75 39.47 94.38 43.26 30 97.50 35.37 97.50 39.29 32 98.75 32.78 98.75 36.41 • 16 gestures • 1760 gesture samples • 10 subjects 80
  • 81. Future Work Scale / rotational Visual 3D gesture invariant spotting definitions 81
  • 82. Summary lhoste@vub.ac.be bderooms@vub.ac.be bsigner@vub.ac.be Auto infer control points Generate Spotting Code Call classification • Extensive spotting: support for real-time continuous streams. • No gesture overshooting: support for overlapping submatches. • Comprehensible: easy to understand and to correct. • Extensible: allows for expert adjustments. 82
  • 83. Lode Hoste, Brecht De Rooms and Beat Signer, Declarative Gesture Spotting Using Inferred and Refined Control Points, Proceedings of ICPRAM 2013, International Conference on Pattern Recognition, Barcelona, Spain, February 2013 83