As I make a lot of videos and short films in my free time, anything related to processing videos excites me, so I really wanted to learn how to use the computer vision object built into Max. For this project I used the cv.jit.faces object to be able to alter a face in a movie by either blurring it or placing a virtual spotlight on it. First, I downscale the image to 1/5th of its original size, then convert it to greyscale, and run it through the cv.jit.faces object. I use the output matrix to determine the positions of the face and accordingly place a blurred image with an alpha layer that I made on top of the face or add a spotlight. I hope you like my project!

Original Image:

Blurred Face:

Enhanced Face/Spotlight

Google Drive Link to Code AND Necessary Media:
https://drive.google.com/drive/folders/0B_T97VaALHA0U1Z6bVllU0MzWEE?usp=sharing
The code:
| <pre><code> | |
| ----------begin_max5_patcher---------- | |
| 2626.3oc6bszjiaaD97r+JPTkCINi0P7h.bOs65D6xI0V4PryEWaMEDEFMbG | |
| JRERp4QbY+a23AoD0HJJLRDRSb1spkRCAIazeciOznQS8yu4hQSxeTVNB7Vv | |
| OAt3he9MWbg4T5SbQ8eewn4hGiSEklKaTb974xrpQWZaqR9Xk47e3o2BdeVR | |
| 4sf+Qg5XlHq4RVHphuMIa10Ex3JqnnzvwAWBnQ5iPZf9Cj5H3SM2SgrTIEQU | |
| Rdl9Vf0mur5oToQdMO8rkySxRkUksuL0IyWV0b1fNdns5LDloaPBGS6tyjL0 | |
| Hw7Ie9qwrQ5y8Ku4M5CWdjX1eK6VQVrD78U+gd.KX.xz+LcLL2fb3PG.qaxy | |
| pJS9uF7Bqu60hONOMuv93MO11GBYqdxdAtw0VcCNiC1RcZA2H1nV5RlXtsy7 | |
| gjYf+d9sYCos3atMOuTBlmeehDTkCVjJdpGiBR4svwXHV04ouF7h4zUcHdvt | |
| 5PsgV7PhdeWg3oxXQpDbSdAXQQdrrrTgXf+TwrInzkyE+4l6IMISFmuLybin | |
| tTptuhssADDesQf2Rmw3yEUBesaAC2hOYidTKq.kNjVg+YQxrjLQJ3iZu3d7 | |
| d4LiqwqBGWDi+x7bwGjm6mSpFu3gjro4OzKWajkOx9As9HcuHiC3.xceGXfg | |
| kGFQFSfggLj56b3XUqpl6DSBZTJq.qdZgz9XUVJ0+AeZHoJ+2.kLUcbPUgH9 | |
| tRvMB0vcfnPMlcJP.LDASAJjNCburnTomf7a.U2JA4MdnIyEyjcRIPNJJArw | |
| yIB1xOJ7b4YGxIF4y0DAHDpOh.TjOBr3aUFl2B99r3BoPM4VZxraqzrx0lJs | |
| cCHTeYpn3NYFXhxZNyzTmVF7wXYXTioASHsLMD1YxzPQDauIzZaH8ZaBGRay | |
| GRWVnsAZaSOLQjPaeBxdUPRy4VpPrKgVfND7JS9f5l2BtTtiURPlghoO3hZ6 | |
| fglQYL67anV8u8fJndoraqbPOvztCcelPo5PPvdbSn5EGXrHTxvn2vs06ncq | |
| 1GjJOWEfXqo.Vqyxp8ZrQHiaHwtjnPr2TZ9.qz6vNWARAS5QewATsQFqbq0e | |
| D7R0WnqN2jd8smHxlcX5siAeAUrLpPbvLhRKsygiBrA1GQaotGlxEhNcib0J | |
| rHcwshIoR07quad9TYuiiUQ7Yiuyn61XEfX+QiEh2IXn56WOWTUj73gCK6Zz | |
| MrGHHhiVY8QPqm.MRQpE3sw2TzoY.9h7zm90lkE225xvnwp38C4Lk0mELV8U | |
| Sv+b5VPvAN6O9PVZBOfspagszscziZubjHOLTyMRDdDq0bCHTjkEwkLBb7qg | |
| qIrRdzNEd6wfmV9H4iKJ.uybLI6mB9zWo7u9KpuA0eizGjFZnhaXjqQ11orS | |
| mcN8j1sijrc1GgzwQHLCRG5fw5L8fuuHQjdVn2llLWwjyCLG5eMTcLKe8pVs | |
| ImodARQdf0CQNQwxofi9hpwtBGHwLJg4OVdBdf0WCSTp3ozjxp9TP6veyJLC | |
| pmQG4PtjhSSVbqTuVcS9PvFt2P9wDqGtedKloSBqC6vtVOHNrUesM4N20wVW | |
| pcAh0xRT7znUOqohJQM5VCuVcd09P0pA8X6DULTMisu5GKkEkWIz6zzc0azz | |
| U+073k50ZWd027we7pe3AkYQN8ekLKSjVpZT8wzenX47EW8Qwcx2OWVjDK9t | |
| Bon58yDIYWMWNMQnZq3twyyuuV4Zj7cpIbrN45bppOSqKHMOeQKNOihnXhTc | |
| kqKUfrrQKaqOFXawxJcHg0w90fLMsdci5pfzkXFNHH.GQFswkoGaYu6Ke1CX | |
| Zg3gp70N3sZRrrJW0wJp5RvE0cX04WOHz50jWlz3jZ1vnMZ897ztuMylLsVM | |
| GIJlMYy9iF+Z0e171Wlk7eVJ6pEK.dslmYYQmWg9AuHOIqp1mRuwVahDSEK5 | |
| DElVVsdbg91tbaD9lBk8oPtHu6NtV3RqWyyaR0ijEK5pkpj4xcc9qKkwkcC9 | |
| xrYpoWZ.36uYS7csO6t7FTiVSh6D8KkaBEOu0xh3c05lM0MFVa71zUmSLt5n | |
| s8RdFZ2zng319kKOWDGOnY9mlOC8pj8H.YfT5WXO9B6wuuYOPLpwUG++TrGp | |
| 6QErW134KHGB2AzibGz.VWzweg63KbG+di6Hpl6H3P3NpOo8LdIoVgbnMoV7 | |
| clSb+kTKDGMFEACogqyrkcWI2Ylsvgms7+Qr6MDkYwn.XS1JOxcO.SeEu6AT | |
| rYmgpS5oO22.LwqIV6k.HPG7BPPuCHnyAfbuIMt+wDH3q.zwf2oK4FQwdgET | |
| jIs8j5swOjOL6jXG4bicZ1XEsiQhZhsd0ZbPfYzAzTQdjngQowaqz6oz.NXm | |
| fIKqpx6qdpwbSl6rlU6dPnON3VUztIA8+lCayJdsmqs93HAmjY.CipmLIrIA | |
| 8Qp+wo6qp7PAmt4LhuerFHMkNwXcf38gkg1Bd2fkQTuk3cHyEtwglOnohi2K | |
| .TWkmLr2pmBH+bL4PaWg86EXqbH6.J+.BQdEDbj9vVKlq3O3ayebfZ2IdWbs | |
| vE3clkQ1aPgHJyVUiq1NGuYgomC2b8JyzQC1+tLhrSMhrkEvKuv.cdtQH4zD | |
| xy5P+t5EE5WMNXKPRXnGAB7oAHrUFpaVeakXXqiAurL.H5bPCjjcS990dn8C | |
| F0elb3opPIm.RAo8R5YKp.aQRRB7Wr9A8GJ7k9OUGn10OQcJYfQmlPha+V67 | |
| xeaU7vXkEhLY5ddkS0EOKz9ZdhrSJp+37TP812Jj5ij5WFxlxrqyWUrUyuzj | |
| X6FAqb2r8ODa8a44rBwTXSlaI3HDLT+xcxHQAH8WTCTp+FgrRb5aB4zMgwsf | |
| sbcFRqAMUSQ9v7wfFyGF9Jw7YKEahovYnA1YSUyuzi8K7vseXHKjvLubtqr. | |
| Q5SAMFPb2Fv9uqSsE7qwQlJgh9pv.FFtd3GxtDn8L76+ysdn52yjWSVO8ANg | |
| s0K4W6TvvOb6FK.FEZsQPZH2PEx4gHFsO6V+2kq1MyUYJczm8qyfw1jVuyaq | |
| Mlk4KKhalEs980Y8diMZprrJISrdqTWUl1M6o0V9KtJHtCBBNDBh4ffzxAdj | |
| xQ+pQrWAoeYRNZMhLp0dStCAwGH4rWSz.HGrKNcOCdyKlJM+RTDb7hdeXo90 | |
| 83ncObRIwjtUR3IPzntEM53DM2USKbvMstHZxN7pH9WzXR2Z8I.vwntEM9DH | |
| 5tw6P+K4cnyP+KY8Z96RooGmncgdVWQEGO+LxEIQ8B0ExQK6fOy.B5XbCGK5 | |
| 5hFNDVQnKyBP7ATBcYRVD7ToiPlO7TgNw9E3E78kDK8.q0tDcMJXHLsTWTRt | |
| OBhwMQy7w7KtI5Pu3U4T3+zgvz5xJmZ5NGmjbgrso6bbRB55BoQCtgyEQiHd | |
| wc0EQC8xJMdVPV8.3C9JMbRzHuDejQzvSxfzfM7U2gjFjIwc.MYaIGaluDKV | |
| T+SGlQHZQLZt3y1ezJYWZ9yjL6eZ1ctQEx6SZtdyugXiDEw2lTIiaJU+QOxs | |
| 4f2jKvhrkI01Mkj+k27a.z6GU0B | |
| -----------end_max5_patcher----------- | |
| </code></pre> |
The helper patch “process”:
| <pre><code> | |
| ----------begin_max5_patcher---------- | |
| 947.3oc0X10aZCCEF9Z3WgUDWlFh+Hesqlz1sSZZa8pooJCwhZVvAEaZopp6 | |
| 29bbR.ZKDRKNfJUMM4Tm9lmWe7wmzGGNvYR9ZlzA7IvuACF73vACLgJCLn95 | |
| ANKnqmlQklg4HX2mOYtia0uRwVqLgyWo.nlnR0CYLS3lHhUK3hLlx72.tMn9 | |
| 1Zh5WGcIUM8VtX1MEroppmLX.xy2EDjP7B0ehibA3nxHHcbvepuQdZ0Sxj4W | |
| g7cJi8zvgkGb6HZKXRIcF6UrcErifg1KXM3VER8vRVEUNNadz2Cy3nXOnF1f | |
| PM3w9FZS7BNLyvDax7EAYb7l42tgb36A4CjAKYY5mDf+IAN5PfOgJl43dDC. | |
| El3g0eHDsAPpNOp7bTaI6PhEcA0sb4x7rG9G.dRqlOnQvEpRen7GsYEvnPyR | |
| 9cRIBiayERrnITVLC1WEyRhdIXsWKK1hfwE.7Iw06agMDBKID6u83gnMxtzh | |
| t.zFBMyrgjtQ76pF1jUJUtnefyTpp05zvHORRRRXhKHNzTflXHjreBC9vQHA | |
| h2PX8rWqDRr4VuRlhlkA7q95RrOLAuo0CjtmKXccpnj1xiwPatMDXxkJ4dW3 | |
| CR1.ecBvgZ3LxlY.oRUJegTQKTfQPvHjKnJDSjBFgAiHWfrBBJbiwfIaaNEl | |
| z59xX76wYlyUdKumKRyu2FMcbzNuvAXSQ6RfH58iafiX5BgP7B16rtM2atD4 | |
| ETUAeMf.ldKs.Dg7Me+4URV07ee0TlV6apztCNUzFmBmr8bDr0pCnvOBoAAA | |
| 3sK3gHCbQnlJeIGn5OB2KoAW9o5cdETn98wf0tQPPqyzHK5FY4zzxpj.9hk4 | |
| EpE42wYfwWKYExwTAWd6eKzGDTw3ulOckt9nRN9Ke65w+5dtTwR+IelflIG+ | |
| 8h74ZrfiWvR4zwyJnO7Cp9rLj2xx2K6r2i3tMXT0BUP6kQQP61XL7B.M5s0X | |
| 7yH1L.mLt3k+2pL5TF+41fLeUwzlmpp2OzErUlTlTwETEW2h41wf7qFzdc52 | |
| hPviHj9U1Ocgh5BQgVPnvNHTfEzInC577ow7hTVgIgr2EVWVauJ6eRJS5hxP | |
| K3s51vNSYKX34RITWVAfsg6g5xRf39H0rSJih6ibyWjwe.oi1uznyfzg8hg2 | |
| Iow8hgCeC0gNIkL6+bzMoRrkRGiInMpFzEyqoJ3qZrftb4c5dJqGsQCcmTyy | |
| MypQtlK4hpKwlKKX2waFOwDgVna3Qo61YUQUCUqiCcpt0bc9gXEuN6Tq7SC+ | |
| O3jI9.G | |
| -----------end_max5_patcher----------- | |
| </code></pre> |
