Information Technology Reference
In-Depth Information
Document Context Veriication Block
(DCV)
Shape Context Verification Block (SCV)
Once we know that the symbol that the rule gener-
ates can exist in the document structural context
in which the element is located, we locally focus
on its shape in order to check if it corresponds to
this symbol. The shape context verification block
is a first step: it models local structural constraints
about the parameters of a rule in order to interpret
an element constituted of several sub-elements:
it makes it possible to identify which part of the
new element corresponds to each parameter. The
syntax is the same as in the DCV block, but this
time R i and A i must be parameters. By default,
there is no constraint on the drawing order of the
elements; if necessary, a chronological operator
can be used.
For example, a sharp is constituted of four
segments which can be drawn in any order. A
SCV block (in which the alias [intersects] is
used for the structural context [in,one] ) can be
written as:
The document context verification block specifies
a list of document structural contexts in which
the symbol has to be identified; they thus have
to be verified by the parameters of the rule. Its
syntax is as follows:
DCV: R 1 [position 1 ,part 1 ]A 1 , …, R n [position n ,part n ]A n .
As introduced previously, this means that at
the relative position position i of a reference R i ,
the part part i of an analyzed element A i exists.
In this block, R i and A i do not have to be part of
the parameters.
For example, a sharp can be drawn on the
left of any note head that does not already have
an accidental; this means that the four segments
forming this symbol must be drawn on the left of
a note head. A DCV block for such an interpreta-
tion rule can be written as (as seen previously,
the parameters of the sharp interpretation rule
are two horizontal segments hs1 and hs2 and two
vertical segments vs1 and vs2 ):
SCV: hs1[intersects]vs1,
hs1[intersects]vs2,
hs1
hs2[intersects]vs1,
hs2
hs2[intersects]vs2.
vs2
vs1
hs1[below,all]hs2,
DCV: Head→head[left,all]hs1,
vs1[right,all]vs2.
head[left,all]hs2,
These local structural constraints are not nec-
essarily enough to ensure that the four segments
constitute a sharp. So, we may want to exploit a
classical hand-drawn shape recognizer; this can
be done thanks to the SR block.
head[left,all]vs1,
head[left,all]vs2.
An alias is defined to specify that a Head can
be a WholeNote , a HalfNote or a QuarterNote .
We would like to note that in this block, we use a
saving operator “ ” to save an element and reuse
it afterwards. Here, it aims at modelling that the
four segments forming the sharp symbol must be
on the left of the same head, denoted by head .
Shape Recognition Block (SR)
The shape recognition block is the second step of
the local interpretation of the analysed element
shape: it corresponds to the call to a hand-drawn
shape recognizer. It makes it possible to invoke
Search WWH ::




Custom Search