{"id":2889,"date":"2021-03-27T16:04:07","date_gmt":"2021-03-27T08:04:07","guid":{"rendered":"http:\/\/www.magicandlove.com\/blog\/?p=2889"},"modified":"2021-03-27T16:39:19","modified_gmt":"2021-03-27T08:39:19","slug":"movement-in-time-part-2-2016","status":"publish","type":"post","link":"http:\/\/www.magicandlove.com\/blog\/2021\/03\/27\/movement-in-time-part-2-2016\/","title":{"rendered":"Movement in Time, Part 2 (2016)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Chinese martial art film fighting sequence and Cursive style calligraphy<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Background<\/h3>\n\n\n\n<p>The artwork is the second part of the Movement in Time series. <a href=\"http:\/\/www.magicandlove.com\/blog\/2021\/03\/27\/movement-in-time-part-1-2014\/\">Part 1<\/a> used 100 popular Hollywood film sequences to generate animated action paintings. Part 2 of the project analysed the fighting sequences in traditional Chinese martial art films. The results will match against the brush stroke data from the famous Cursive style Chinese calligraphy text \u2013 the One Thousand Characters Classics \u5343\u5b57\u6587. In the end, the fight sequences will automatically generate a piece of unique text from the character database. Part of the project is funded by the Faculty Research Grant from the <a href=\"http:\/\/www.hkbu.edu.hk\">Hong Kong Baptist University<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Cursive style Chinese calligraphy<\/h3>\n\n\n\n<p>In Tang Dynasty, there was a legendary story about the famous Chinese calligrapher, Zhang Xu \u5f35\u65ed. When he was drunk as usual, he saw a sword dance performed by the madam Gong Sun \u516c\u5b6b\u5927\u5a18. Since then, he was inspired to create the Wild Cursive style in Chinese calligraphy. It was the first motivation that I tried to use digital media to connect these two different types of traditional Chinese art forms, calligraphy and martial art.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/ee\/Zhang_Xu_Gu_Shi_Si_Tie.jpg\" alt=\"\"\/><figcaption>Calligraphic work of Zhang Xu (from Wikipedia)<\/figcaption><\/figure>\n\n\n\n<p>With the help from a former student, Ms. Lisa LAM, I digitised all the 1,000 Chinese characters using a drawing tablet with a customer program developed in <a href=\"http:\/\/processing.org\/\">Processing<\/a>. Each character will have a separate XML file to keep the brush stroke information. Here is a sample of an XML file.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;character&gt;\n  &lt;stroke time=\"0\"&gt;\n    &lt;point&gt;\n      &lt;x&gt;0.21666667&lt;\/x&gt;\n      &lt;y&gt;0.395&lt;\/y&gt;\n      &lt;w&gt;0.032258064&lt;\/w&gt;\n      &lt;t&gt;5&lt;\/t&gt;\n    &lt;\/point&gt;\n    &lt;point&gt;\n      &lt;x&gt;0.21666667&lt;\/x&gt;\n      &lt;y&gt;0.39666668&lt;\/y&gt;\n      &lt;w&gt;0.121212125&lt;\/w&gt;\n      &lt;t&gt;33&lt;\/t&gt;\n    &lt;\/point&gt;<\/code><\/pre>\n\n\n\n<p>Given the XML file, I can recreate each Chinese character either in still image or animation.<\/p>\n\n\n\n<figure class=\"wp-block-image size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" src=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/tinchar-300x300.png\" alt=\"\" class=\"wp-image-1859\" srcset=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/tinchar-300x300.png 300w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/tinchar-150x150.png 150w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/tinchar.png 600w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><figcaption>Still image of the first character from the One Thousand Characters Classics (Sky)<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"960\" height=\"960\" src=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/Thousand001.jpg\" alt=\"\" class=\"wp-image-1852\" srcset=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/Thousand001.jpg 960w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/Thousand001-150x150.jpg 150w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/Thousand001-300x300.jpg 300w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><figcaption>The collection of 1000 characters from the database<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Chinese calligraphy writing by Processing\" width=\"980\" height=\"735\" src=\"https:\/\/www.youtube.com\/embed\/kHZ4xWxAmoY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Given the touch\/pressure sensitivity of the drawing tablet, I can simulate the depth information in 3D. It introduces an additional stylistic rendering of the Chinese characters in three dimensional space. Here are some experiments with 3D rendering of the Chinese characters.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Chinese calligraphy in 3D with Processing\" width=\"980\" height=\"735\" src=\"https:\/\/www.youtube.com\/embed\/m8n3T8oZOuE?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Animated writing of Chinese calligraphy with Processing\" width=\"980\" height=\"735\" src=\"https:\/\/www.youtube.com\/embed\/7qcoE7JR5mE?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">The Chinese martial art films<\/h3>\n\n\n\n<p>The second component of the project is a collection of the famous Chinese martial art films. I studied and digitised a number of Chinese martial art films from director ranging from the traditional King Hu to the more contemporary Ang Lee.<\/p>\n\n\n\n<p>I developed a custom software, in Processing and OpenCV, to use different methods of motion analysis to extract motion data from the fighting sequences. By experimenting with the motion data as virtual forces, I managed to animate a piece of string (thread) dancing across the screen.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Martial arts fighting sequence motion\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/kzkmkJRjGro?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Here are some examples of using the OpenCV functions, such as motion history, dense optical flow to analyse the fighting sequences from the films: <a href=\"http:\/\/www.imdb.com\/title\/tt0299977\/\">Hero<\/a> (2002), <a href=\"http:\/\/www.imdb.com\/title\/tt0429078\/\">Seven Swords<\/a> (2005) and <a href=\"http:\/\/www.imdb.com\/title\/tt0190332\/\">Crouching Tiger, Hidden Dragon<\/a> (2000).<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Optical flow tracking in the film Hero 1\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/sdKb6aroOEM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Optical flow data with fighting sequences in Seven Swords\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/5nH5ey9uYK4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Motion tracking with Crouching Tiger, Hidden Dragon 1\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/oo4TFzNbjqQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Representation of the 1000 characters<\/strong><\/h3>\n\n\n\n<p>Given the 1000 XML files of the one thousand Chinese characters and some mechanisms to extract fighting data from the martial art film sequences, I have to find a way to enable matching between them. In this case, I go back to my experience of learning Chinese calligraphy. In my childhood, like other kids, I learnt Chinese calligraphy by copying the grand masters\u2019 works with the aids of a grid chart. Normally, we use a 3 x 3 grid chart to layout the brush strokes of each character. In the testings, I have used different grid sizes such as 3 x 3, 5 x 5, and 9 x 9.<\/p>\n\n\n\n<p>With the 1000 Cursive style Chinese calligraphic characters, I also explore different ways to represent them in terms of point density, stroke direction, etc. The results will lead to different ways to enhance matching from the encoded fighting sequence to a unique Chinese characters. Here are some testing results to represent each of the Cursive style characters in a 9 x 9 grid, using both point density and stroke direction, respectively.<\/p>\n\n\n\n<p>Point density model<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Thousand Character Classic \u5343\u5b57\u6587 Model 1\" width=\"980\" height=\"735\" src=\"https:\/\/www.youtube.com\/embed\/iga9GA-GZv4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Stroke direction model<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Thousand Character Classic \u5343\u5b57\u6587 Model 4\" width=\"980\" height=\"735\" src=\"https:\/\/www.youtube.com\/embed\/etXaQktY0CI?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Character representation models<\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"1000\" src=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points.png\" alt=\"\" data-id=\"1907\" data-full-url=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points.png\" data-link=\"http:\/\/www.magicandlove.com\/blog\/artworks\/movement-in-time-part-2-chinese-martial-art-version\/one-thousand-characters-modeled-as-points\/\" class=\"wp-image-1907\" srcset=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points.png 1000w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points-150x150.png 150w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-modeled-as-points-300x300.png 300w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"1000\" src=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes.png\" alt=\"\" data-id=\"1908\" data-full-url=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes.png\" data-link=\"http:\/\/www.magicandlove.com\/blog\/artworks\/movement-in-time-part-2-chinese-martial-art-version\/one-thousand-characters-modeled-as-strokes\/\" class=\"wp-image-1908\" srcset=\"http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes.png 1000w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes-150x150.png 150w, http:\/\/www.magicandlove.com\/blog\/wp-content\/uploads\/2016\/08\/One-Thousand-Characters-Modeled-as-Strokes-300x300.png 300w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure><\/li><\/ul><figcaption class=\"blocks-gallery-caption\">Character representation models<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Matching the fighting sequence and characters<\/h3>\n\n\n\n<p>In this phase, I explored the machine learning library from OpenCV and the <a href=\"http:\/\/www.cs.waikato.ac.nz\/ml\/weka\/\">Weka Machine Learning library<\/a> to test run the matching against a fighting sequence and a Cursive style character from the database. Before I started matching with the fighting sequences, I developed another testing software to cross match a live character writing exercise with the 1000 characters in the database, using both the OpenCV machine learning library and the Weka library, with the K-nearest Neighbour matching.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Cursive style Chinese calligraphy recognition test\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/oHf_pwjvvi4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Optical flow tracking and martial art film - Hero\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/-Cw0_KEWNMY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Matching Chinese calligraphy to fighting sequences - Crouching Tiger, Hidden Dragon\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/gThM8TnLHRQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Exhibitions<\/h3>\n\n\n\n<p>In November 2016, I was invited to participate in the <a href=\"https:\/\/www.facebook.com\/Special.Exhibit.from.JMAF.HK\">Japan Media Arts Festival, Hong Kong Special Exhibition<\/a> in <a href=\"http:\/\/www.theannex.com.hk\/\">The Annex<\/a>, Hong Kong. The artwork includes four martial art film sequences, Crouching Tiger, Hidden Dragon, Hero, <a href=\"http:\/\/www.imdb.com\/title\/tt0385004\/\">House of Flying Daggers<\/a> (2004).<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Movement in Time Part 2 - Preview version\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/3YJCge2U7hA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>It is a computational animation where a custom software written in Processing executes live to extract motion data from the film sequences and match in real time with the 1000 characters in the database. The closest match one will be drawn on the fly in the screen. The display screen consists of 4 parts. The top left part is the original film sequence rendered in dense optical flow vectors. The bottom left part is the summary of all the optical flow data and reduced to a 5 x 5 grid indicating the most prominent movement on screen. In each frame of the playback, the motion data summarized in the 5 x 5 grid will match with the 1000 characters database. The closest matched character will be shown on the bottom right part of the screen animating the brush strokes of the characters. The top right part indicates where the current brush stroke position along with the path it travels in previous frames.<\/p>\n\n\n\n<p>Recently, I enhance the work to accumulate all the characters matched successfully in the fighting sequence to form a piece of poetic text, on the top right corner of the screen. The order of the characters is determined purely by the fighting sequences. Quite obviously, they do not intend to make any senses. Nevertheless, when we continue to read along the characters stream, it appears like a poem and occasionally seems to carry meanings beyond our imaginations.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Movement in Time Part 2 - version 2\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/Q2QTM-w4ku4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Source code<\/h3>\n\n\n\n<p>The artwork is released as open source material. The source codes can be found in the repository <a href=\"https:\/\/github.com\/chungbwc\/MovementinTimePart2\">Movement in Time \u2013 Part 2<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chinese martial art film fighting sequence and Cursive style calligraphy Background The artwork is the second part of the Movement in Time series. Part 1 used 100 popular Hollywood film sequences to generate animated action paintings. Part 2 of the project analysed the fighting sequences in traditional Chinese martial art films. The results will match [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2936,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"gallery","meta":{"footnotes":""},"categories":[175],"tags":[],"class_list":["post-2889","post","type-post","status-publish","format-gallery","has-post-thumbnail","hentry","category-portfolio","post_format-post-format-gallery"],"_links":{"self":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/2889","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/comments?post=2889"}],"version-history":[{"count":44,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/2889\/revisions"}],"predecessor-version":[{"id":2935,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/2889\/revisions\/2935"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/media\/2936"}],"wp:attachment":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/media?parent=2889"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/categories?post=2889"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/tags?post=2889"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}