Skip to content

Instantly share code, notes, and snippets.

@hbredin
Created November 10, 2015 08:26
Show Gist options
  • Save hbredin/b40bbd93d813aab04ec3 to your computer and use it in GitHub Desktop.
Save hbredin/b40bbd93d813aab04ec3 to your computer and use it in GitHub Desktop.
TVD
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"source": [
"from __future__ import print_function\n",
"%pylab inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Initialize \"The Big Bang Theory\" dataset"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"IN CASE YOU USE 'speaker' RESOURCES, PLEASE CONSIDER CITING:\n",
"@inproceedings{Tapaswi2012\n",
" title = {{``Knock! Knock! Who is it?'' Probabilistic Person Identification in TV Series}},\n",
" author = {Makarand Tapaswi and Martin B\\\"{a}uml and Rainer Stiefelhagen},\n",
" booktitle = {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},\n",
" year = {2012},\n",
" month = {June},\n",
"}\n",
"\n",
"\n",
"IN CASE YOU USE 'outline' RESOURCES, PLEASE CONSIDER CITING:\n",
"@misc{the-big-bang-theory.com,\n",
" title = {{The Big Bang Theory Wiki}},\n",
" howpublished = \\url{http://wiki.the-big-bang-theory.com/}\n",
"}\n",
"\n",
"\n",
"IN CASE YOU USE 'transcript' RESOURCES, PLEASE CONSIDER CITING:\n",
"@misc{bigbangtrans,\n",
" title = {{big bang theory transcripts}},\n",
" howpublished = \\url{http://bigbangtrans.wordpress.com/}\n",
"}\n",
"\n",
"\n",
"IN CASE YOU USE 'transcript_www' RESOURCES, PLEASE CONSIDER CITING:\n",
"@misc{bigbangtrans,\n",
" title = {{big bang theory transcripts}},\n",
" howpublished = \\url{http://bigbangtrans.wordpress.com/}\n",
"}\n",
"\n",
"\n",
"IN CASE YOU USE 'outline_www' RESOURCES, PLEASE CONSIDER CITING:\n",
"@misc{the-big-bang-theory.com,\n",
" title = {{The Big Bang Theory Wiki}},\n",
" howpublished = \\url{http://wiki.the-big-bang-theory.com/}\n",
"}\n",
"\n"
]
}
],
"source": [
"\n",
"from tvd import TheBigBangTheory\n",
"dataset = TheBigBangTheory('/Users/bredin/Corpora/tvd/')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### First episode"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"Episode(series='TheBigBangTheory', season=1, episode=1)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"firstEpisode = dataset.episodes[0]\n",
"firstEpisode"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### English subtitles"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from pyannote.parser import SRTParser\n",
"path = dataset.path_to_subtitles(firstEpisode, language='en')\n",
"englishSubtitles = SRTParser(split=True, duration=True).read(path)()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**`englishSubtitles`** is an instance of [`pyannote.core.Transcription`](https://github.com/pyannote/pyannote-core/blob/master/doc/pyannote.core.transcription.ipynb)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is basically a directed graph where nodes are instants and edges represent temporal intervals."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" -inf --> 1.240 : {}\n",
" 1.240 --> 3.834 : {'subtitle': u'If a photon is directed through a plane with two slits in it...'}\n",
" 3.834 --> 4.000 : {}\n",
" 4.000 --> 5.149 : {'subtitle': u'...and either is observed...'}\n",
" 5.149 --> 5.319 : {}\n",
" 5.319 --> 7.549 : {'subtitle': u'...it will not go through both. If unobserved. it will.'}\n",
" 7.549 --> 7.719 : {}\n",
" 7.719 --> 11.109 : {'subtitle': u\"If it's observed after it's left the plane. but before it hits its target...\"}\n",
"11.109 --> 11.279 : {}\n",
"11.279 --> 13.481 : {'subtitle': u\"-...it will not've gone through both slits.\"}\n",
"13.481 --> 13.839 : {'subtitle': u'Agreed.'}\n",
"13.839 --> 13.999 : {}\n",
"13.999 --> 15.068 : {'subtitle': u\"What's your point?\"}\n",
"15.068 --> 15.239 : {}\n",
"15.239 --> 18.072 : {'subtitle': u\"There's no point. I just think it's a good idea for a T-shirt.\"}\n",
"18.072 --> 23.400 : {}\n",
"23.400 --> 24.855 : {'subtitle': u'-Excuse me.'}\n",
"24.855 --> 25.914 : {'subtitle': u'Hang on.'}\n",
"25.914 --> 29.119 : {}\n"
]
}
],
"source": [
"for startTime, endTime, data in englishSubtitles.ordered_edges_iter(data=True):\n",
" if endTime > 30:\n",
" break\n",
" print('{s:6.3f} --> {e:6.3f} : {d}'.format(s=startTime, e=endTime, d=data))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Manual transcript"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"transcript = dataset.get_resource('transcript', firstEpisode)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**`transcript`** is also an instance of [`pyannote.core.Transcription`](https://github.com/pyannote/pyannote-core/blob/master/doc/pyannote.core.transcription.ipynb).\n",
"\n",
"However, exact timing is missing. Only \"floating\" instants are available."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\"C\" --> \"D\" SHELDON : So if a photon is directed through a plane with two slits in it and either slit is observed, it will not go through both slits. If it's unobserved it will, however, if it's observed after it's left the plane but before it hits its target, it will not have gone through both slits.\n",
"\"E\" --> \"F\" LEONARD : Agreed, what's your point?\n",
"\"G\" --> \"H\" SHELDON : There's no point, I just think it's a good idea for a tee-shirt.\n",
"\"I\" --> \"J\" LEONARD : Excuse me?\n",
"\"K\" --> \"L\" RECEPTIONIST : Hang on.\n"
]
}
],
"source": [
"for startTime, endTime, data in transcript.ordered_edges_iter(data=True):\n",
" if endTime > 'M':\n",
" break\n",
" if 'speech' not in data:\n",
" continue\n",
" print('\"{s}\" --> \"{e}\" {character} : {line}'.format(s=startTime, e=endTime, \n",
" character=data.get('speaker', ''), \n",
" line=data.get('speech', '')))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Audio features extraction"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"pathToEnglishTrack = dataset.path_to_audio(firstEpisode, language='en')"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [],
"source": [
"import librosa\n",
"y, sr = librosa.load(pathToEnglishTrack, sr=None, mono=True)\n",
"mfcc = librosa.feature.mfcc(y=y, sr=sr, n_mfcc=13)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n+R/obOCCQtmw8YuIVZLuIB3cDAArgZ81tvWNJ2kBcBIwSdLzpDuXtgE3ApOA+yT1RsRcSQcAP4+I\neex8zkUAAAGLSURBVKSZAu/N/fPuwJ0R8WD+2K8DP1W6Jfvf+X1HqhG/WZKOIV0OeBa4MNetN36Q\nDqo7+gL9IOf+MjOz0viJejMzK407FTMzK407FTMzK407FTMzK407FTMzK407FTMzK407FWtJkiYW\n0oVvKaQef0vST5rdPjOrzs+pWMuTdBXwVkT8sNltMbOh+UzF2sVgKpZZkn6fl6+WdLukP+YJks6Q\ndH2eKGlJzreEpGMlLcvZY+/PUzOY2Qhwp2Lt7lDgZNK8Pr8ClkbE0aR0IvMkjSGlKPliRMwAfgF8\nv1mNNet0w6W+N2tlASyJiH5Ja4CuiHggr1tNSns/FfgoaZ4LSHnoOj6pn1mzuFOxdvc/SPPWSOor\nlA+Qft8CnooIp703awAPf1k7q2dyuPXAPnlaBiSNKcyuaWYlc6di7SIKf6stw3tnKo2I6COlx78u\nT+vcC3xiJBtqNpr5lmIzMyuNz1TMzKw07lTMzKw07lTMzKw07lTMzKw07lTMzKw07lTMzKw07lTM\nzKw0/we4ZNqID5QREQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x112b35a90>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"librosa.display.specshow(mfcc, x_axis='time')\n",
"colorbar(); title('MFCC'); tight_layout();"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.10"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment