These past ten years, tv series became increasingly popular: for more than half of the people we polled in our user study (described in Subsection 4.1), watching tv series is a daily occupation, and more than 80% watch tv
series at least once a week. Such a success is probably in part closely related to modern media. The extension of high-speed internet connections led to unprecedented viewing opportunities: streaming or downloading services give control to the user, not only over the contents he will watch, but also over the viewing frequency.
The typical dozen of episodes that a tv series season contains is usually watched over a much shorter period of time than the usual two months it is aired on television: for 41% of the people we polled, a whole season (about 10 hours of viewing in average) is watched in only one week, with 2-3 successive episodes at once, and for 9% of them, the viewing period of a season is even shorter (1-2 days), resulting in the so-called “binge-watching” phenomenon. In summary, television is no longer the main channel used to watch tv series, resulting in short viewing periods of the new seasons of tv series, usually released once a year.
Modern tv series come in various flavors: whereas classical tv series, with standalone episodes and recurring characters, remain well-represented, they are by far not as popular as tv serials, with recurring characters involved in a continuous plot, usually spanning several episodes, when not several seasons: for 66% of the people we polled, tv serials are preferred to series with standalone episodes.
Yet, the narrative continuity of tv serials directly conflicts with the usual viewing conditions we described: highly continuous from a narrative point of view, tv serials, like any other tv series, are typically watched in quite a discontinuous way; when the episodes of a new season are released, the time elapsed since viewing the previous season usually amounts to several months, when not nearly one year.
As a first major consequence, viewers are likely to have forgotten to some extent the plot of tv serials when they are, at last, about to know what comes next: nearly 60% of the people we polled feel the need to remember the main events of the plot before viewing the new season of a tv serial. Whereas discussing with friends is a common practice to help remember the plot of the previous seasons (used by 49% of the people polled), the recaps available online are also extensively used to fill such a need: before viewing a new season, about 48% of the people read textual synopsis, mainly in Wikipedia, and 43% watch video recaps, either “official” or hand-made, often on YouTube. Interestingly, none of these ways of reducing the “cognitive loading” that the new season could induce excludes the others, and people commonly use multiple channels of information to remember the plot of tv serials.
Furthermore, the time elapsed since watching the previous season may be so long that the desire to watch the next one weakens, possibly resulting in a disaffection for the whole tv serial. Many popularity curves of tv serials , as measured by their average ratings on the Internet Movie DataBase (IMDb), can often be interpreted as exhibiting such a loss of interest at the beginning of a new season: surprisingly, for many tv serials, the average rating of each episode looks in average like a linear function of its rank in the season, while the number of votes, except for the very first episode of the first season, remains roughly the same. Fig. 1 shows such average ratings for every episode of the first five seasons of the series Game of Thrones, along with the season trendlines.
Despite intensive advertising campaigns around the new season and possible use of cliffhangers during the previous season finale, the season popularity trendlines tend to exhibit a kind of “cold-start” phenomenon, seemingly independent of the intrinsic qualities of the season first episodes, as if the audience needed to get immersed again in the serial universe and storylines. According to Fabrice Gobert, the director of the French tv serial Les revenants, “Writing the first episode of the first season is not an easy thing, but the first episode of the second season is not easy either, because we have to make the spectator want to immerse himself in the series again.” (radio interview on France Culture, 09/28/2015).
In this work, we investigate a method for automatically generating character-oriented video summaries of tv serials from partially annotated data. Such character-oriented summaries are expected to efficiently fill each user’s information needs and to tackle the cold-start issue we described by benefiting from the empathetic relationship viewers are likely to have with some specific characters. In order to assess our method, we performed a large scale user study in a real-case scenario, by focusing on Game of Thrones (denoted hereafter GoT), a popular tv serial with multiple and complex storylines, a few weeks before the sixth season was publicly released.
Our main contributions are the following. The first consists in making use of Social Network Analysis for capturing the specific dynamics of each character’s storyline. The second consists in estimating the relevance of movie sequences in the context of summarization, by relying to some extent on some of the stylistic patterns commonly used by filmmakers. The third is the use of an additional criterion when applying the standard Maximal Margin Relevance algorithm for building the final summary. The fourth is the user study we conducted, both to assess our method and to get valuable feedback for future work. The last one is the annotation of the corpus that we used for experimental purpose, which is publicly available online111https://doi.org/10.6084/m9.figshare.3471839.
The rest of the paper is organized as follows. In Section 2, we review the main related works. In Section 3, we describe the method we propose. We first focus on the type of video units we consider as potential candidate for later insertion in the final character-oriented summary; we then describe the pre-processing step we perform to model the dynamics of a specific character’s storyline; and we finally detail the way we estimate the relevance of each candidate unit, along with the selection algorithm. In Section 4, we describe the user study we performed and the main results we obtained. Finally, we discuss some perspectives in Section 5.
2 Related Work
TV series content-based summarization.
There is a limited amount of work that takes narrative content into account when creating tv series summaries. The most related works are probably Tsoneva2007 and Sang2010 . In Tsoneva2007 , Tsoneva et al. introduce a method for automatically generating 10-minute video summaries of standalone tv series episodes from the movie scripts. In Sang2010 , Sang et al.
introduce a way of clustering consecutive scenes into sub-stories, before using an attention model to build character-based summaries of full-length movies and standalone episodes oftv series. However, neither of these works consider long-term narratives such as those we focus on in our work. Moreover, for tv serials, the method introduced in Tsoneva2007 would result in too long summaries.
Plot modeling in movies and TV series.
In Weng2009 , Weng et al. make use of Social Network Analysis to automatically analyze the plot of a movie: the social network resulting from the agglomeration of every interaction between the characters is split into communities, before narrative breakpoints are hypothesized if the characters involved in successive scenes are socially distant. In Ercolessi2012 , a similar network of interacting speakers is used, among other features, for clustering into storylines the scenes of standalone episodes of two tv series. Nonetheless, the story is considered in both of these works as only unveiling a static, pre-defined community structure within the network of interacting characters. Though such an assumption could hold for the short term plots that full-length movies and standalone tv series episodes depict, it is no longer the case for tv serials: from one episode to the other, the plot not only reveals, but also dynamically impacts the structure of the network of interacting characters. In contrast, we make in this article a dynamic use of Social Network Analysis for modeling the plot of tv serials. In Tapaswi2014 , Tapaswi et al. focus on the interactions between the characters of standalone episodes of tv series to build a visual, dynamic representation of the plot along a timeline. Though such a representation of the narrative could generalize to tv serials, such a visualization focus does not provide us with tools for segmenting the plot into consistent units. In Friedland2009 , dialogues, among other features, are used to design a navigation tool for browsing sitcom episodes, but are considered as independent atomic events. Instead, plot analysis within tv serials requires us to segment the plot into larger narrative units.
Stylistic patterns in movies.
In Guha2015 , Guha et al.
adopt a style-based perspective for the plot modeling purpose. They attempt to automatically detect the typical three-act narrative structure of Hollywood full-length movies: each of these three narrative segments is claimed to be characterized by specific stylistic patterns based on film grammar; by combining low-level features extracted from the video stream, the authors automatically exhibit the boundaries separating these three typical consecutive acts. InMa2002 , Ma et al. introduce a video summarization scheme based on a content-independent attention model: some of the features used are closely related to filmmaking techniques commonly used to make viewers focus on specific sequences, such as shot size and music. In Hanjalic2005 , Hanjalic et al. investigate low-level features, some of them based on film grammar, like shot frequency, for modeling the emotional impact of videos, and especially full-length movies. Such low-level features, related to stylistic patterns used in filmmaking, are widely used in automatic trailer generation. For instance, in Smeaton2006 , Smeaton et al. make use, among other low-level features, of shot length and camera movement to isolate action scenes for later insertion in action movie trailers. Similarly, Chen et al. introduce in Chen2004 a way of automatically generating trailers and previews of action movies by relying on shot tempo; and in Smith2017 , Smith et al. rely on an affective model based on audio-visual features, some of them related to film grammar, to select candidate scenes for later, manually supervised use in a specific thriller movie trailer. However, none of these works differentiate between full-length movies and tv series episodes, which are always considered as self-sufficient from a narrative point of view. Indeed, for full-length movies or standalone episodes of classical tv series, stylistic patterns are probably effective enough to reliably isolate salient and meaningful sequences. Instead, we focus in this article on tv serials, by far the most popular genre nowadays, defined by continuous plots and intricate narrative patterns. At this much larger scale of dozens of episodes considered globally as developing a single plot, possibly split into multiple, parallel storylines, only relying on low-level stylistic features is likely to miss important developments of the narrative, semantically related to the story content; furthermore, plot modeling requires a dynamic perspective and excludes any hypothesis about a stable and static community structure within the network of interacting characters.
3 Character-oriented Summaries
In this section, we describe the algorithms that we use to build character-oriented summaries of tv serials. We first give a general overview of our summary generation framework.
3.1 System Overview
As can be seen on Fig. 2, the first processing step, detailed in Subsection 3.2, consists in extracting from the raw video stream basic narrative units, denoted in the literature as Logical Story Units, for potential insertion in the extractive summary. The relevance of such units is estimated according to three criteria: the first two ones, shot size (block 3a on the figure) and background music (3b) aim at capturing stylistically salient sequences, as described in Subsection 3.4. The last one, social relevance (block 2c), is a content-oriented feature and aim at capturing new developments in a character’s storyline. As explained in Subsection 3.3, social relevance relies on the dynamic social network of interacting characters (block 2b), which in turn is based on the identification of the speakers within every scene (2a). Once estimated, shot size, background music and social relevance are combined in a single weighting scheme, and relevant Logical Story Units are iteratively selected according to the alg;orithm detailed in Subsection 4.2, resulting in the final summary shown on Fig 2 (block 4).
3.2 Logical Story Unit Detection
In this subsection, we define the video sequences we regard as the basic candidate units for potential, later insertion in the summary, along with a novel algorithm for extracting them.
Usually built upon sophisticated editing rules, the “official” video recaps of tv serials rarely concatenate single shots extracted from different parts of the original stream. Instead, the basic unit used in such summaries is typically a short sequence of about 10 seconds consisting of a few consecutive shots. Such sequences are usually selected not only because of their semantic relevance, but also because of their semantic cohesion and self-sufficiency. From a computational perspective, identifying such sequences in the video stream as potential candidates for later insertion in the final summary remains tricky.
The stylistic patterns widespread among filmmakers are particularly relevant, because they are often used to emphasize the semantic consistency of these sequences. For instance, dialogue scenes require the “180-degree” rule to be respected so as to keep the exchange natural enough: in order for both speakers to seem to look at each other when they appear successively on-screen, the first one must look right and the second one must look left. To achieve this, two cameras must be placed along the same side of an imaginary line connecting them. Such a rule results in a specific visual pattern made of two alternating, recurring shots and is highly typical of dialogue scenes.
More generally, several sets of such recurring shots may overlap each over, resulting in possibly complex patterns well-suited for segmenting movies into consistent narrative episodes. In Hanjalic1999 , Hanjalic et al. denote as Logical Story Units (lsus) such sequences of intertwined recurring shots, and introduce a method for automatically extracting them. Fig. 3 shows a sequence of five shots with one recurring shot in positions 1, 3, 5, resulting in one lsu.
We use lsus as the basic candidate units selected when building the summaries of tv serials. In order to detect such lsu
s, we first split the whole video into shots, which we then compare and label according to their similarities. Both tasks, shot cut detection as well as shot similarity detection, rely on image comparison: we first model images with-dimensional histograms of the image pixel values in the hsv color space, before performing the standard block-based comparison technique detailed in Koprinska2001 by Koprinska et al. Once identified, similar shots can be used as a basis for automatically extracting every lsu.
Instead of the standard graph-based algorithm Yeung et al. describe in Yeung1998 , we introduce here a novel, alternative matrix-based algorithm to automatically detect lsu boundaries. Though computationally more expensive, such an algorithm has the advantage of being more straightforward to implement. The resulting sequences are strictly the same as when applying the standard algorithm: both approaches only depend on the reliability on the previous shot similarity detection step, which performed pretty well when applied to a subset of annotated episodes (-score ).
Once performed, shot similarity detection results in a symmetric similarity matrix , where is set to if the th and th shots are considered as similar, and to otherwise. As long as the shots are chronologically ordered, such a representation constitutes a straightforward way of automatically detecting the lsu boundaries.
For the five shots included in the sequence shown on Fig. 3, the similarity matrix is filled as follows:
The th shot (, where is the total number of shots) is strictly included in one lsu if surrounded by at least two occurrences of the same recurring shot: in the matrix , such a statement is equivalent to the fact that the double sum is greater or equal to . In Equation 1, the terms of the sum are included in the dashed red box. The fact that means that the 4th shot (solid red box) is surrounded by at least two occurrences of the same recurring shot, the first one occurring after () and the second one before () the 4th position, and strictly belongs to one lsu.
The lsu boundaries can then be deduced from the two quantities and , (, with ) according to the two following rules: 1) if and , the th shot is the beginning of a new lsu; and 2) conversely, if and , the th shot is the end of the previous lsu. Furthermore, the double sum does not need to be computed for each but can be recursively deduced from the previous quantity according to the following relation:
In the example of Equation 1, the quantity (sum of the coefficients inside the dashed red box) can then be recursively obtained from the quantity (sum of the coefficients inside the dashed blue box) as follows: .
By construction, the value of the coefficient is equal to (two consecutive shots cannot be the same) and is ignored when recursively updating the quantity from .
The method we use requires two nested loops over every shot, resulting in a time complexity in . Nonetheless, such a method captures maximal lsus, often far too long to be inserted into a summary of acceptable length.
In order to get shorter candidate sequences without loosing the formal consistency of the lsus, we apply recursively our extraction algorithm within each lsu to obtain more elementary, not maximal, lsus. During the extraction process, we put both lower and upper bounds on the duration of the candidate lsus (either maximal or more elementary). Based on what we observe in the manually edited official recaps of tv serials, we constrained every final candidate lsus to last at least seconds, and at most .
We then estimate the relevance of each precomputed lsu for possible insertion into the summary according to three criteria. The first criterion is related to the content of the storyline associated to the considered character. The two other ones rely on techniques commonly used by filmmakers to tell the story, and are related to the form of the narrative.
3.3 Social Relevance
In order to estimate the relevance of each lsu content, we first automatically segment the storyline associated to a specific character into narrative episodes. In any narrative, the story of a specific character usually develops sequentially and advances in stages: each narrative episode is defined as a homogeneous sequence where some event directly impacts a specific group of characters located in the same place at the same time. Though such a notion of narrative episode may be defined at different levels of granularity, such sequences are often larger than the formal divisions of books in chapters and of tv serials in episodes. Here are some examples of character-based narrative episodes in Game of Thrones: “Theon Greyjoy rules Winterfell”; “Arya Stark captive in Harrenhal”; “Jaime Lannister’s journey in Dorne to rescue Myrcella”…
The segmentation of each character’s storyline into narrative episodes aims at building a summary able to capture the dynamics of the plot and is performed as follows.
. Such a dynamic network is built upon the speaker turns and scene boundaries and is based on a smoothing method that provides us with an instantaneous view of the state of any relationship at any point of the story, whether the related characters are interacting or not at this moment. As a result, the full, smoothed, social neighborhood of a specific character is always available at any time.
As stated above, building the dynamic social network of interacting characters heavily depends on two key steps: scene boundaries detection and speaker detection. Though it would have been possible to automatically perform both tasks, the second one (speaker detection) either in a supervised (speaker recognition) or in an unsupervised way (speaker diarization), we decided to hand-label the data. First, we wanted to do a relatively large scale user study and could not afford to show the viewers in a limited time both fully and partially automatic summaries to measure the impact of the errors made at the speaker recognition/diarization level. Second, tv serials usually contain many speakers, even when focusing on the major ones, often speaking in adverse conditions (background music, sound effects) resulting, as reported in Bredin2016 , in high diarization error rates. We left the task of speaker recognition/diarization in such challenging conditions for future work.
Based on the dynamic network of interacting characters, we define
as the relationship vector of a specific character at time: contains the weights, ranging between and , of his/her relationships with any other character at time . Here are two examples of such relationship vectors for the Game of Thrones character Arya Stark, respectively in the 34th and 49th scene where she appears (the components are re-arranged in decreasing order of importance):
For each specific character we target, we then compute the distance matrix , where is the normalized Euclidean distance between the character’s relationship vectors and at times and . Because each narrative episode is defined as impacting a limited and well-identified group of interacting characters, the relationships of a character are expected to stabilize during each narrative episode, and to change whenever a new one occurs.
Fig. 4 shows the matrix for the character Arya Stark, as built over the first five seasons of GoT. In this matrix, the time steps are the scenes, ordered chronologically, and for the sake of clarity, we build the matrix only upon the scenes where the character is involved, even though the smoothing method we described in Bost2018 provides a way of estimating the social neighborhood of the character in any scene.
As can be seen from Fig. 4, the character’s social environment is not continuously renewed as the storyline develops, but stabilizes for some time, before being replaced by a new social configuration. For instance, between scenes 38 and 51, the social environment of Arya remains quite the same, suggesting that her storyline stabilizes in some narrative episode. Interestingly, other narrative episodes can also be observed in the matrix at larger (scenes 6–48) or smaller (scenes 21–26) scales, confirming the relative and multi-scale nature of the notion of narrative episode.
We then optimally partition the distance matrix , so that to split the whole character’s storyline into successive narrative episodes. Such a partitioning depends on a threshold set by the user himself, depending on his specific information needs: corresponds to the maximal admissible distance between the most covering relationship vector in each narrative episode and any other relationship vector within this narrative episode; it can be interpreted as the level of granularity desired when analyzing the story.
We partition the whole set of scenes (storyline) into disjoint subsets of contiguous scenes (narrative episodes) by adapting a standard set covering problem to this partitioning purpose (see for example Daskin2011 for the standard formulation of the set covering problem). First, a constraint of temporal contiguity is put on the elements of the admissible subsets of scenes, so that to keep narrative episodes continuous over time. Second, in order to obtain a covering as close as possible to a partition, we minimize the overlapping between the covering subsets instead of minimizing their number as in the standard formulation of the set covering problem. Despite this adapted objective, some relationship vectors at the boundaries between two consecutive narrative episodes may still belong to both of them: in this case, the covering is refined into a real partition by assigning the duplicated vector to the closest relationship state.
Fig. 5 shows the resulting partition of Arya Stark’s distance matrix (Fig. 4), for a granularity level . Each narrative episode is represented as a box containing a vertical line. This line corresponds to the scene in which the relationship state covers at best the narrative episode. In such scenes, the relationship vector can be regarded as conveying the typical social environment of the character within the associated narrative episodes.
The two relationship vectors and that we introduced in Equation 3 (3rd and 4th vertical lines on Fig. 5) best cover Arya Stark’s social neighborhood in the third and fourth narrative episodes. These two relationship vectors turn out to perfectly match two major developments in Arya’s story: “Arya Stark captive in Harrenhal” () and “Arya Stark and the Brotherhood” ().
For the considered character, the social relevance of the th lsu
is then defined as the cosine similarity between the representative vectorof the character’s relationships in the narrative episode to which the th lsu belongs and the vector of relationships the character is currently having within the th lsu. As mentioned before, the representative vector is derived from the smoothing method detailed in Bost2018 , however the components of the character’s relationships vector within each lsu
correspond to the interaction times between the character and every other character. The interaction time is estimated according to the basic heuristics described inBost2018 . For a specific character, such a social relevance measure aims at discriminating the lsus showing some of his/her typical relationships within each narrative episode of his storyline. Nonetheless, social relevance remains too broad a criterion to be used on its own for isolating relevant video sequences when building the summary. In the next subsection, we focus on two additional, stylistic features that can help to isolate salient lsus among all those that are equally relevant from the social point of view.
3.4 Stylistic Saliency
The semantics of most movie sequences depends not only on their objective contents, but also on the way they are filmed and edited. For instance, the importance of a specific sequence in the plot, though primarily dependent on the content of the associated event, is usually emphasized by some stylistic patterns commonly used in filmmaking. We here focus on two such stylistic patterns to isolate salient sequences among all the possible lsus: on the one hand the size of the shots and on the other the background music. We selected both of them for their reliability when isolating salient video sequences in movies, and because of their low computational cost.
The shot sizes are estimated by applying the face detector described in Felzenszwalb2008
to a sample of 5 video frames for each shot. The 5 frames are uniformly distributed over time within the shot. Such a sample size of 5 frames aims both at keeping the computation time reasonable when performing face detection, and at facing the issue of the characters adopting various poses during a single shot, which is likely to cause false negatives. For each of the 5 frames, we retain, if any, the largest face box. We then pre-compute the shot size as the median height of all the face boxes detected over the 5 frames and we express it as a proportion of the video frame height. Using the median rather than the mean value prevents the shot size from being biased by very large or very small false positives, usually hypothesized for a single frame only. Fig.6 shows a sequence of four shots along with the face boundaries as automatically detected; on the top of the figure, the height of the gray rectangles corresponds to each shot size, as a proportion of the frame height. The shot size we obtain for each th lsu is the mean value of the size of the shots it contains, resulting, besides the social relevance , in a second, style-oriented, feature for possible insertion into the final summary.
. The second stylistic feature we consider is music. Based on the matlab MIRtoolbox package described in Lartillot2008 , we implemented a basic music tracker relying on the method Giannakopoulos et al. introduced in Giannakopoulos2008 for tracking music in movies. The features we use to distinguish the background music from speech rely on the chroma vectors, conveying the distribution of the audio signal over the twelve notes of the octave. For music, the audio signal typically results in chroma vectors with components both less uniformly distributed over the octave and more stable over time than for speech.
The musicality of the th Logical Story Unit is then pre-computed according to the method described in Giannakopoulos2008 to capture the statistical dispersion of the chroma vector, both over the twelve notes and over time, resulting in a single scalar feature indicative of the average musicality of each lsu.
3.5 Selection Algorithm
The three features we introduced (social relevance, average shot size and average musicality) are combined for each lsu into a single measure of relevance estimated according to the following weighting scheme:
By construction, social relevance and average shot size range from to . We therefore min-max normalize the average musicality to get values between and . In the use case that we detailed in Section 1, the respective weights of these three features would be set by the users themselves, depending on their specific needs: on the one hand, emphasizing social relevance is expected to result in more informative summaries, able to help the user remember the plot; on the other hand, emphasizing music and shot size is expected to result in trailer-like summaries, able to address the cold-start phenomenon we described in Section 1. We defer to Subsection 4.2 the discussion of the particular weight settings we used in our contrastive experimental study.
In the rest of this subsection, we describe how we build the summary of the storyline associated to a specific character by iteratively selecting optimal candidate lsus, once their relevance and duration are set.
Character-oriented summaries aim at reflecting the dynamics of a character’s storyline. Once isolated by applying the segmentation method described in Subsection 3.3, each narrative episode of a specific character’s storyline should be equally reflected, whatever its duration, as a major development in his/her story. We therefore build the summary step-by-step to reflect the natural segmentation of the storyline into narrative episodes, possibly of variable duration.
Besides the weighting scheme of Equation 4, our algorithm for constructing the character-oriented summary takes two inputs set by the users themselves, depending on their information needs: the level of granularity for analyzing the storyline in narrative episodes; and the maximum time , expressed in seconds, devoted in the summary to each narrative episode.
Each narrative episode, once isolated, consists of a subset of scenes, containing candidate lsus, each th lsu being weighted according to the global relevance score introduced in Equation 4. Summarizing the narrative episode can then be regarded as a task with two joint objectives and a length constraint: the summary must not exceed the duration and aims at containing not only relevant sequences, but also sequences that remain as diverse as possible, in order to minimize redundancy.
In Mcdonald2007 , McDonald shows that such a summarization problem can be formulated as the following quadratic knapsack problem, with two joint objectives and a length constraint:
is a binary variable set toif the th lsu is inserted in the narrative episode summary, and to otherwise; denotes the relevance, as computed according to Equation 4, of the th lsu; is the duration, expressed in seconds, of the th lsu; is the maximum time devoted in the summary to the narrative episode containing the current subset of lsus; and finally, is a measure of dissimilarity between the th and th lsus: it is defined as the normalized Euclidean distance between the vectors of relationships in the th and th lsus, as defined in Subsection 3.3.
Once introduced in the objective function, such a coefficient aims at generating a summary that provides us with an overview of the full range of the character’s relationships at this point of the story, instead of focusing on a single relationship shown in several redundant sequences.
As stated in Mcdonald2007 and in Gillick2009 , such a formulation of the summarization problem can be tricky to solve exactly for large instances, even when linearizing the quadratic part of the objective function, and heuristic methods provide us with much more scalable, though possibly sub-optimal, resolution techniques. We introduce here a greedy heuristic for iteratively selecting optimal lsus. In Mcdonald2007 , McDonald underlines the limitations of Maximal Margin Relevance-based algorithms (mmr) to reach the double objective of relevance and diversity when building summaries: if selected iteratively without taking their length into account, the already selected sequences may be too long and prevent us from choosing additional sequences to improve the objective function.
As a possible alternative to the dynamic programming-based algorithm detailed in Mcdonald2007 , we introduce here the method summarized in Algorithm 7. It generalizes to the quadratic case the usual greedy heuristic used to solve the linear knapsack problem in Fayard1982 and Balas1980 .
The summary , containing the indices of the selected lsus, is built iteratively from the whole subset of candidate lsus: at each iteration, we choose the lsu with the maximum relevance/duration ratio (line 4) that simultaneously does not exceed the total duration limit and does not overlap with any of the previously selected lsus (conditions line 5): some candidate lsus may share some shots and partially overlap. Such a criterion tends to select short lsus, as long as they are both relevant and diverse. The objective of diversity is taken into account when iteratively updating the vector of relevance values (line 9): the updating formula comes from the re-writing of the objective function after each new sequence is selected. After the very first iteration of the algorithm for example, and assuming, without loss of generality, that the first lsu is selected, the objective function can be re-written as:
where the right-hand part of the equation is the objective function of the summarization problem 5 for the remaining, not yet selected, lsus, again formulated as the objective function of a quadratic knapsack problem, but with an updated vector of relevance values. As reported in Subsection 4.2, Algorithm 7, with a time complexity in , results in short computation times, even for large instances of the problem. Moreover, the provided solution turn out to be very close to the optimal solution, but much more scalable.
For each narrative episode, a summary is built until the time duration limit is reached, and the final character-oriented summary is made of the concatenation of all the lsus, chronologically re-ordered, selected in every narrative episode.
4 Experiments and Results
In order to assess our method for automatically generating character-oriented summaries of tv serials, we performed a large scale user study in a real case scenario. In this section, we first describe the user study we performed, we then explain the types of summaries the participants were asked to rank, along with the evaluation protocol, and we finally detail the obtained results.
4.1 User Study
A few weeks before the sixth season of the popular tv serial Game of Thrones was released, people, mainly students and staff of our university, were asked to answer a questionnaire, both in order to collect various data about their tv series viewing habits and to evaluate automatic summaries centered on five characters of GoT. The responses are reported in full detail in Bost2016b
, Appendix A. A total of 187 subjects took part in the questionnaire, with 52.7% female, and 47.3% male participants. The population was quite young: 21.14 years old in average, with a standard deviation of 2.67 years. Being familiar withGoT, if recommended, was not mandatory to answer the questionnaire. 27% of the people we polled had actually never watched GoT when answering the questionnaire, but 56% of them had seen all first five seasons. More than half of the GoT’s viewers we polled in our study stated that they feel the need to remember the plot of the past seasons when a new one is about to be released. To do so, they use multiple channels of information: discussions with friends (57.6%), textual (32.9%) and video summaries (34.1%).
Among the people who watched every past season of GoT, 64.2% had last watched an episode of this tv serial more than six months ago, and were in the typical use case we described in Section 1.
4.2 Summaries for Evaluation
After answering general questions about their tv series viewing habits, the participants were asked to evaluate summaries of GoT centered on the storylines of five different characters to ensure generalizability: Arya Stark, Daenerys Targaryen, Jaime Lannister, Sansa Stark and Theon Greyjoy.
TV series data.
By focusing on such a popular tv serial, we were quite certain that most participants would have watched it; moreover, with GoT, we were at the time of the study in the typical use case that we want to target (see Section 1), with a new season about to be released.
The dataset covers the whole set of the first five seasons (50 one-hour episodes) of GoT. As stated in Subsection 3.3, the summaries are generated from partially annotated data: we manually inserted the scene boundaries within each episode and we labeled every subtitle according to the corresponding speaker, as a basis for estimating verbal interactions between characters and building the dynamic social network of interacting characters. Every other step (lsu detection, shot size and musicality estimation, summary generation) is performed automatically.
Though in a real system characters would be selected on-demand by the users themselves, we had to focus on specific ones for assessing our approach in a common setting. Our criteria to select the five characters were the following: these characters were still involved in the narrative at the end of the fifth season of GoT, and were therefore likely to play a role in the next one; they all are important enough to have evolved at some point of the plot in their own storylines; their story is likely to be complex enough to require a summary before viewing the next season.
The summaries cover the storylines of the five considered characters over all the first five seasons of GoT. Such long-term summaries were expected to capture the whole dynamics of a character’s storyline when introducing to the next season, rather than only focusing on the very last events he happened to experience during the last season. The more a plot is advanced, the more such long-term summaries are probably needed, especially when the plot is complex.
We automatically generated three summaries for each character:
First, a full summary (denoted full), built upon the method we described in Section 3 and designed so as to be sensitive to both the content and the style of the narrative. This first summary depends on three parameters: the vector of feature weights introduced in Equation 4 to estimate the relevance of each lsu; the granularity level used for segmenting the storyline into narrative episodes; and the time devoted in the summary to each of them. In a real system, these three parameters would be set by the users themselves, depending on their specific needs. In contrast, in our user study, we chose a particular parameter setting to ensure methodologically sound comparison: in order to keep the summary duration into reasonable boundaries, we set the granularity level to and the duration devoted to each narrative episode to seconds; for generating such full summaries, we set as explained below the feature weights to .
A second, style-based summary (denoted sty), is built only upon the stylistic features we described in Subsection 3.4, by setting the feature weights to . By discarding social relevance, there is no longer need for the pre-segmentation of the storyline into narrative episodes. As a consequence, the candidate lsus are not selected among the separate subsets resulting from the segmentation step; instead they are considered as a whole single set of candidate sequences, weighted equally according to their average musicality and shot size, and finally selected by iteratively applying Algorithm 7 until the resulting style-based summary has roughly the same duration as the full summary.
The specific feature weight values we chose for building the full summaries were set as follows: we increased the weight of social relevance in the weighting scheme of Equation 4 (from 0 to 0.16) until the resulting full summaries differed significantly (by ) from the style-oriented ones. Such a contrastive methodology was expected to measure the benefits of incorporating social relevance for capturing the plot content, in addition to the equally weighted style-oriented features (music and shot size).
Third, a baseline, semi-random summary (denoted bsl) is obtained as follows: some non-overlapping lsus where the considered character is verbally active are first randomly selected until reaching a duration comparable to the duration of the first two kinds of summaries; the selected lsus are then re-ordered chronologically when inserted in the summary.
The main properties of the resulting three types of summaries are reported in Table 1 for each of the five characters considered. For each character and each type of summary, the number of candidate lsus is mentioned, along with their average duration in seconds. The same properties are reported for the selected lsus inserted in the summary. The duration of the resulting summary, expressed in seconds, is mentioned in the seventh column. The compression rate is mentioned in the eighth one, and is expressed as the ratio between the total duration of all the scenes in which the character is verbally active and the summary duration. Finally, the computation time, expressed in seconds, needed for generating each summary is reported in the ninth, last column.
As can be seen, the number of candidate lsus differs from one character to the other: for each character, the only lsus considered are those where he/she is verbally active in order to center the summary on this specific character. Moreover, the style-based and baseline summaries rely on slightly more candidate lsus than the full ones: a few scenes only containing lsus with isolated utterances of the character with no hypothesized interlocutor were discarded when building the full summaries, but not when constructing the other two types: social relevance can not apply to these lsus hypothesized as soliloquies, but music and shot size may still make them stylistically salient.
The final summaries turn out to be quite short, ranging from 1:30 to 2:50 minutes, resulting in very high compression rates: the whole story of a character during 50 one-hour episodes is summarized in about two minutes. When summarizing the storyline of important characters, like Daenerys Targaryen, the compression rate may be much higher than when summarizing the storylines of characters that are not as important. The total time of the summary is actually dependent on the number of narrative episodes resulting from the segmentation of the storyline based on the character’s evolving social network: characters with fast-evolving social environments, going through more narrative episodes may therefore need longer summaries than possibly more important characters involved in fewer narrative episodes. Moreover, the duration of the full summary is sometimes not as long as the style-based and baseline ones. When building full summaries, the lsus are selected separately in each narrative episode, until the limit of 25 seconds is reached for each one. This may result in a cumulative loss of a few seconds with respect to the total time available (25 seconds number of narrative episodes). For both other types of summaries, with lsus selected from a single, global set, the loss is usually not as important and the global time limit is nearly reached.
Not surprisingly, the criterion used when building the full and style-based summaries by applying Agorithm 7 results in summaries consisting of shorter sequences than the baseline summary: while the candidate lsus last a bit more than 10 seconds in average (fourth column in Table 1), the duration of the selected ones (sixth column) in the full and sty summaries, based on an optimal ratio between relevance and duration, is very close to the lower bound of 5 seconds put on the duration of the candidate lsus (see Subsection 3.5). On the opposite, the sequences inserted in the bsl summaries are almost twice as long and very close to the average duration of the candidate ones.
As can be seen in the last column, the computation time for dynamically generating the summaries on a personal laptop (Intel Xeon-E3-v5 cpu) remain quite low, once lsus, shot size, background music, along with the dynamic network of interacting characters, have been pre-computed once and for all. Such computation times turn out to be well-suited for the on-demand summary generation scenario we described in Section 1. Nonetheless, though based upon the same algorithm 7 (time complexity in ), full summaries need a bit more time to be generated than the other two types: as explained above, in full summaries, the lsus are selected separately in each narrative episode, whereas they are globally considered as a single set of possible candidate when building the style-based and baseline summaries.
Finally, the three summaries may overlap. Table 2 reports for each of the five considered characters the overlapping time, expressed in %, between the three summary types.
|bsl / full||4.85||3.12||1.70||2.03||4.85|
|bsl / sty||12.62||9.80||0.75||9.11||6.28|
|full / sty||30.26||32.61||32.80||35.54||36.07|
As expected, the overlapping time between the full and sty summaries on the one hand, and the bsl summary on the other hand, remain quite low and randomly ranges from 2% to 12%, depending on the considered character. In contrast, the overlapping time between the full and sty summaries ranges by construction from 30% to 36%: as stated above, full summaries are partially based on sty ones, by additionnaly incorporating socially relevant sequences. The following evaluation protocol is all about measuring, in a contrastive manner, the subjective impact of the consideration of the social content of the plot, in addition to the style of the narrative.
4.3 Evaluation Protocol
The users were asked to rank, for each character, the three summaries according to the two usual criteria used in subjective evaluation of summaries, informativeness and enjoyability, but reformulated as follows according to the specific use case we target:
1. Which of these three summaries reminds you the most the character’s story?
2. Which of these three summaries makes you the most wanting to know what happens next to the character?
The same questions were asked for their last choice, resulting in a full ranking of the three summaries for each character. In addition, the participants were asked to motivate in a few words their ranking. The participants were allowed not to answer the ranking questions if too unsure.
No restriction was put on the number of possible viewings of the three summaries: a passive, first viewing of the summaries was actually expected to be needed to help the viewer to remember the main steps of the character’s storyline; a second, informed viewing, possibly cursive, was then expected to be needed to finely compare the summaries according to the two criteria (respectively referred to as “best as recap?” and “best as trailer?” in the rest of the article). About 25% or the participants in average admitted to need several viewings to rank the three summaries according to the two criteria.
For each character’s storyline, the best summaries according to those of the participants who had watched all five past seasons of GoT are reported in Table 3, both as a proportion (denoted “%”) and a number (denoted “#”) of participants.
|Character||Votes||Best as recap?||Best as trailer?|
As can be seen in Table 3, whatever the ranking criterion, baseline summaries never obtained majority votes (bold entries in the table): for three of these summaries (Arya, Jaime, Sansa), the scores remain quite low. In some cases, participants chose the baseline summary because of the length of the sequences (about 10 seconds, twice as much as in the other summary types), perceived as more appropriate to fully understand and remember the sequences. However, setting the lower bound of the admissible lsus to a higher value would first have resulted in too long summaries: many users reported during our study that 2-3 minutes was the maximum duration they could tolerate for video summaries of this type. Furthermore, increasing the sequence duration would have made the user’s feedback trickier to interpret: our method aims at showing both socially relevant and stylistically salient verbal interactions between characters, but is not sensitive to their linguistic content. By keeping the sequences short enough, it is easier, though still challenging, to rely on the user’s feedback to assess our method.
Nonetheless, concise summaries with short, socially diverse sequences extracted from every narrative episode were globally well perceived, and turn out to be worth the slight extra computation time reported in Table 1. For 4 out the 5 characters targeted, the full summary was selected as the most efficient recap, in some cases by far: Arya’s story full summary was considered as the best recap by 70.9% of the participants. Interestingly, the two other summaries turn out to miss some major narrative episodes. Fig. 10 shows the distribution of the selected lsus in both style-based ((a)a) and full ((b)b) summaries of Arya’s storyline.
As can be seen, the last narrative episode (last blue box from left to right on both figures), is not represented in the style-based summary, in contrast to the full summary. As a result, the last, fifth season of Game of Thrones is not represented in Arya’s style-based summary, which was perceived as “incomplete” by many participants. Moreover, stylistic saliency is likely to be underrepresented in short narrative episodes, as in the first one (first blue box from left to right on both figures), resulting in incomplete summaries unable to capture the whole dynamics of the character’s storyline.
Furthermore, for 4 out of the 5 characters, the full summaries obtain higher scores when judged as recaps than when judged as trailers. In some cases, the difference is impressive: whereas 35.8% of the participants rank the full summary of Daenerys’ story as the best recap, they are only 18.2% to rank it as the best trailer. Such a difference of ranking when switching from the “recap” to the “trailer” criterion globally benefits the style-based summaries, more appreciated as trailers than as recaps for 4 characters out of 5. For 3 characters, such style-based summaries even obtain a majority vote according to the “trailer” criterion.
However, some of the votes were sometimes unexpected. First, the three summaries of Daenerys’ storyline obtain roughly similar scores when evaluated as recaps, without clear advantage for the full summary: Daenerys is a key-character of GoT, often named “Mother of Dragons” from the fact she owes three dragons. Many participants, as can be seen from the short explanations they gave to motivate their ranking, turned out to focus on this aspect of Daenerys to assess the summaries: absent from the full summary, Daenerys’ dragons are heard in the style-based one, and by chance seen in the baseline one. Such a criterion was sometimes used to discard the full summary, though being the only one that captured her crucial meeting with Tyrion Lannister. The scores obtained by Theon’s summary were also surprising, with quite low scores for the full summary, probably penalized by a baseline summary rather semantically consistent and convincing, though somehow incomplete (“Fall of Winterfell” and “Final Reunion with Sansa” missing).
Nonetheless, on the one hand, the results globally strengthen our “plot modeling” approach when it comes to summarize the dynamics of a character’s storyline over dozens of episodes. On the other hand, the stylistic features we used to isolate salient sequences remain too hazardous when used on their own for capturing the whole character’s storyline, but turn out to be valuable to make viewers feel like viewing what comes next.
5 Conclusion and Perspectives
In this paper, we described and evaluated a way to automatically generate character-oriented summaries of tv serials from partially annotated data. We first described a method for extracting consistent candidate sequences for later, possible insertion into the final character’s storyline summary, before detailing a weighting scheme of their relevance. On the one hand, the relevance of each candidate sequence, based on a step of pre-segmentation of the character’s storyline into narrative episodes, is expressed in terms of social relevance. The summary is then designed so as to focus on the most typical relationships of the character at each step of his/her storyline. On the other hand, the relevance of each candidate sequence can also be expressed in terms of stylistic saliency. We specifically focused on shot size and background music, as mid-level features commonly used by filmmakers to emphasize the importance of some specific sequences. We evaluated this summarization framework by performing a large scale user study in a real case scenario and obtained promising results. The social network perspective that we introduced results in content-covering summaries that the viewers perceived as effective recaps of the complex tv serial plots; in addition, the use of background music and shot size for supporting the engaging, revival effect expected from such summaries turned out to be relevant to the users we polled.
In future work, we would like to generalize our feature choices, both content and style-related, to other tv serial genres, and further investigate the empathetic relationship that our character-oriented summaries could revive between the viewer and his/her favorite character(s): the cold-start phenomenon that the season trendlines of IMDb ratings exhibit on Fig. 1 not only depends on the viewer’s cognitive disengagement, but probably also on an emotional disaffection that character-oriented summaries can handle properly.
Acknowledgements.This work was supported by the Research Federation Agorantic, Avignon University.
- (1) Balas, E., Zemel, E.: An algorithm for large zero-one knapsack problems. Operations Research 28(5), 1130–1154 (1980). DOI 10.1287/opre.28.5.1130. URL https://doi.org/10.1287/opre.28.5.1130
- (2) Bost, X.: A storytelling machine ? : automatic video summarization : the case of TV series. Theses, Université d’Avignon (2016). URL https://tel.archives-ouvertes.fr/tel-01637270
- (3) Bost, X., Labatut, V., Gueye, S., Linarès, G.: Extraction and analysis of dynamic conversational networks from tv series. In: M. Kaya, J. Kawash, S. Khoury, M.Y. Day (eds.) Social Network Based Big Data Analysis and Applications, pp. 55–84. Springer International Publishing, Cham (2018). DOI 10.1007/978-3-319-78196-9˙3. URL https://doi.org/10.1007/978-3-319-78196-9_3
- (4) Bost, X., Labatut, V., Gueye, S., Linarès, G.: Narrative smoothing: Dynamic conversational network for the analysis of tv series plots. In: 2016 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM), pp. 1111–1118 (2016). DOI 10.1109/ASONAM.2016.7752379. URL http://doi.org/10.1109/ASONAM.2016.7752379
- (5) Bredin, H., Gelly, G.: Improving speaker diarization of tv series using talking-face detection and clustering. In: Proceedings of the 24th ACM International Conference on Multimedia, MM ’16, pp. 157–161. ACM, New York, NY, USA (2016). DOI 10.1145/2964284.2967202. URL http://doi.acm.org/10.1145/2964284.2967202
- (6) Chen, H.W., Kuo, J.H., Chu, W.T., Wu, J.L.: Action movies segmentation and summarization based on tempo analysis. In: Proceedings of the 6th ACM SIGMM International Workshop on Multimedia Information Retrieval, MIR ’04, pp. 251–258. ACM, New York, NY, USA (2004). DOI 10.1145/1026711.1026752. URL http://doi.acm.org/10.1145/1026711.1026752
- (7) Daskin, M.S.: Network and discrete location: models, algorithms, and applications. John Wiley & Sons (2011). DOI 10.1002/9781118032343. URL https://doi.org/10.1002/9781118032343
- (8) Ercolessi, P., Sénac, C., Bredin, H.: Toward plot de-interlacing in tv series using scenes clustering. In: 2012 10th International Workshop on Content-Based Multimedia Indexing (CBMI), pp. 1–6 (2012). DOI 10.1109/CBMI.2012.6269836. URL https://doi.org/10.1109/CBMI.2012.6269836
- (9) Fayard, D., Plateau, G.: An algorithm for the solution of the 0–1 knapsack problem. Computing 28(3), 269–287 (1982). DOI 10.1007/BF02241754. URL https://doi.org/10.1007/BF02241754
- (10) Felzenszwalb, P., McAllester, D., Ramanan, D.: A discriminatively trained, multiscale, deformable part model. DOI 10.1109/CVPR.2008.4587597. URL https://doi.org/10.1109/CVPR.2008.4587597
- (11) Friedland, G., Gottlieb, L., Janin, A.: Using artistic markers and speaker identification for narrative-theme navigation of seinfeld episodes. In: 2009 11th IEEE International Symposium on Multimedia, pp. 511–516 (2009). DOI 10.1109/ISM.2009.20. URL https://doi.org/10.1109/ISM.2009.20
- (12) Giannakopoulos, T., Pikrakis, A., Theodoridis, S.: Music tracking in audio streams from movies. In: 2008 IEEE 10th Workshop on Multimedia Signal Processing, pp. 950–955 (2008). DOI 10.1109/MMSP.2008.4665211. URL https://doi.org/10.1109/MMSP.2008.4665211
Gillick, D., Favre, B.: A scalable global model for summarization.
In: Proceedings of the Workshop on Integer Linear Programming for Natural Langauge Processing, ILP ’09, pp. 10–18. Association for Computational Linguistics, Stroudsburg, PA, USA (2009).DOI 10.3115/1611638.1611640. URL http://dl.acm.org/citation.cfm?id=1611638.1611640
- (14) Guha, T., Kumar, N., Narayanan, S.S., Smith, S.L.: Computationally deconstructing movie narratives: An informatics approach. In: 2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 2264–2268 (2015). DOI 10.1109/ICASSP.2015.7178374. URL https://doi.org/10.1109/ICASSP.2015.7178374
- (15) Hanjalic, A.: Affective video content representation and modeling. IEEE Transactions on Multimedia 7(1), 143–154 (2005). DOI 10.1109/TMM.2004.840618. URL https://doi.org/10.1109/TMM.2004.840618
- (16) Hanjalic, A., Lagendijk, R.L., Biemond, J.: Automated high-level movie segmentation for advanced video-retrieval systems. IEEE Transactions on Circuits and Systems for Video Technology 9(4), 580–588 (1999). DOI 10.1109/76.767124. URL https://doi.org/10.1109/76.767124
- (17) Koprinska, I., Carrato, S.: Temporal video segmentation: A survey. Signal Processing: Image Communication 16(5), 477 – 500 (2001). DOI 10.1016/S0923-5965(00)00011-4. URL http://www.sciencedirect.com/science/article/pii/S0923596500000114
Lartillot, O., Toiviainen, P., Eerola, T.: A matlab toolbox for music
In: C. Preisach, H. Burkhardt, L. Schmidt-Thieme, R. Decker (eds.) Data Analysis, Machine Learning and Applications, pp. 261–268. Springer Berlin Heidelberg, Berlin, Heidelberg (2008).DOI 10.1007/978-3-540-78246-9˙31. URL https://doi.org/10.1007/978-3-540-78246-9_31
- (19) Ma, Y.F., Lu, L., Zhang, H.J., Li, M.: A user attention model for video summarization. In: Proceedings of the 10th ACM International Conference on Multimedia, MM ’02, pp. 533–542. ACM, New York, NY, USA (2002). DOI 10.1145/641007.641116. URL http://doi.acm.org/10.1145/641007.641116
- (20) McDonald, R.: A study of global inference algorithms in multi-document summarization. In: G. Amati, C. Carpineto, G. Romano (eds.) Advances in Information Retrieval, pp. 557–564. Springer Berlin Heidelberg, Berlin, Heidelberg (2007). DOI 10.1007/978-3-540-71496-5˙51. URL https://doi.org/10.1007/978-3-540-71496-5_51
- (21) Sang, J., Xu, C.: Character-based movie summarization. In: Proceedings of the 18th ACM International Conference on Multimedia, MM ’10, pp. 855–858. ACM, New York, NY, USA (2010). DOI 10.1145/1873951.1874096. URL http://doi.acm.org/10.1145/1873951.1874096
- (22) Smeaton, A.F., Lehane, B., O’Connor, N.E., Brady, C., Craig, G.: Automatically selecting shots for action movie trailers. In: Proceedings of the 8th ACM International Workshop on Multimedia Information Retrieval, MIR ’06, pp. 231–238. ACM, New York, NY, USA (2006). DOI 10.1145/1178677.1178709. URL http://doi.acm.org/10.1145/1178677.1178709
- (23) Smith, J.R., Joshi, D., Huet, B., Hsu, W., Cota, J.: Harnessing a.i. for augmenting creativity: Application to movie trailer creation. In: Proceedings of the 25th ACM International Conference on Multimedia, MM ’17, pp. 1799–1808. ACM, New York, NY, USA (2017). DOI 10.1145/3123266.3127906. URL http://doi.acm.org/10.1145/3123266.3127906
- (24) Tapaswi, M., Bäuml, M., Stiefelhagen, R.: Storygraphs: Visualizing character interactions as a timeline. In: 2014 IEEE Conference on Computer Vision and Pattern Recognition, pp. 827–834 (2014). DOI 10.1109/CVPR.2014.111. URL https://doi.org/10.1109/CVPR.2014.111
- (25) Tsoneva, T., Barbieri, M., Weda, H.: Automated summarization of narrative video on a semantic level. In: International Conference on Semantic Computing (ICSC 2007), pp. 169–176 (2007). DOI 10.1109/ICSC.2007.42. URL https://doi.org/10.1109/ICSC.2007.42
- (26) Weng, C., Chu, W., Wu, J.: Rolenet: Movie analysis from the perspective of social networks. IEEE Transactions on Multimedia 11(2), 256–271 (2009). DOI 10.1109/TMM.2008.2009684. URL https://doi.org/10.1109/TMM.2008.2009684
- (27) Yeung, M., Yeo, B.L., Liu, B.: Segmentation of video by clustering and graph analysis. Computer Vision and Image Understanding 71(1), 94 – 109 (1998). DOI 10.1006/cviu.1997.0628. URL http://www.sciencedirect.com/science/article/pii/S1077314297906287