Dev Depot: Headtrackr Provides Unique Possibilities For Motion Control

Microsoft’s Xbox Kinect, Nintendo Wii and Sony’s PlayStation Move all use motion-sensing game controllers to provide an added dimension of user engagement and “fun” to the game play of formerly thumb-bound fans, forced to use a hand-held game controller. Apple’s iPhone ushered in the widespread use of gesture controls, such as swiping or pinching and pulling a screen, as well as shaking the device to initiate software behaviors.

Now, forward looking web developers are moving beyond the mouse and keyboard to embrace innovative, sometimes “hands free” methods, of providing full user control over the computing and display environments.

Now, forward looking web developers are moving beyond the mouse and keyboard to embrace innovative, sometimes “hands free” methods, of providing full user control over the computing and display environments.

If this seems like the kind of cutting edge component that you would like to add to your website, then headtrackr (www.github.com/auduno/headtrackr/), a JavaScript library for real-time face tracking and head tracking via webcam, provides unique possibilities worthy of exploration.

Links from the depository provide additional information on the algorithms and tools, as well as the science behind the technology, providing for interesting further reading, such as the guide at https://dev.opera.com/articles/view/head-tracking-with-webrtc/.

The headtrackr script uses the WebRTC/getUserMedia standard, supporting browsers able to stream video and audio content directly from native devices, such as a webcam.

According to developer Audun Mathias Øygard, one rather exciting use for WebRTC is head tracking — detecting the movement of the user’s head (or other appendages) in relation to a webcam — which in turn allows developers to create gesture-based controls.

Øygard cites FaceKat (www.shinydemos.com/facekat/), an Opera 12 release demo employing head tracking as an example of the technology, noting that Opera 12 was the first desktop browser to support camera access via the getUserMedia API. There is also a video showcasing the technology at https://player.vimeo.com/video/44049736 that might give you an idea of its potential.

The demo and actual production examples are best when used with a laptop that has a builtin camera and a browser that has camera webRTC/getUserMedia support (you can see the overview of browsers supporting getUserMedia at https://caniuse.com/stream).

Better results are obtained when the user’s face is evenly lighted and looking ahead.

Using this technology is as simple as downloading the minified headtrackr.js library and including it on a webpage, just as with any other JavaScript, i.e. using HTML 5:

<script src=?headtrackr.js?></script>

To implement the script, the following code initiates the headtrackr using a video element to contain the mediastream and a canvas element to copy the videoframes to:

<canvas id=?inputCanvas? width=?320? height=?240? style=?display:none?></canvas>
<video id=?inputVideo? autoplay loop></video>
<script>
var videoInput = document.getElementById(?inputVideo?);
var canvasInput = document.getElementById(?inputCanvas?);
var htracker = new headtrackr.Tracker();
htracker.init(videoInput, canvasInput);
htracker.start();
</script>

Once the headtracker script is initiated, it will regularly generate the JavaScript events headtrackingEvent and facetrackingEvent on the relevant document, allowing coders to program various interactions between the site and its visitors, based on where they look.

“The event headtrackingEvent has the attributes x, y, z, which tells us the estimated position of the users head in relation to the center of the screen, in centimeters,” Øygard explains. “The event facetrackingEvent has the attributes x, y, width, height and angle, which tell us the estimated position and size of the face on the video.”

This allows users to either create an eventlistener to handle these events, or if using the three.js script, one of the pre-packaged controllers from this library could be used to create pseudo-3D images, also known as “head-coupled perspective” effects.

Related:  

Copyright © 2024 Adnet Media. All Rights Reserved. XBIZ is a trademark of Adnet Media.
Reproduction in whole or in part in any form or medium without express written permission is prohibited.

More Articles

profile

WIA Profile: Samantha Beatrice

Beatrice credits the sex positivity of Montreal for ultimately inspiring her to pursue work in adult entertainment. She had many friends working in the industry, from sex workers to production teams, so it felt like a natural fit and offered an opportunity to apply her marketing and social media savvy to support people she truly believes in and wants to see succeed.

Women In Adult ·
opinion

Understanding the Latest Server Processors

Over the last decade, we mostly stopped talking about CPU performance. Recently, however, there has been a seismic and exciting change in the CPU landscape, due to innovation by a chip company called Advanced Micro Devices (AMD).

Brad Mitchell ·
opinion

User Choice, Privacy and the Importance of Education in AV

As we discussed last month, age verification in the adult sector is critical to ensuring legal compliance with ever-evolving regulations, safeguarding minors from inappropriate content and protecting the privacy of adults wishing to view adult content.

Gavin Worrall ·
opinion

Maintaining Payment Processing Compliance When the Goalpost Keeps Moving

VIRP is the new four-letter word everyone loves to hate. The Visa Integrity Risk Program went into effect last year, and affects several business types — including MCC 5967, which covers adult and anything else with nudity, and MCC 7273, dating services that don’t allow nudity.

Jonathan Corona ·
opinion

Making the Most of Your Sales Opportunities

The compliance road has been full of twists and turns this year. For many, it’s been a companywide effort just to make it across that finish line. Hopefully, most of us can now return our attention to some important things we’ve left on the back burner for months — like driving revenue.

Cathy Beardsley ·
profile

YourPaysitePartner Marks 25-Year Anniversary Amid Indie Content Renaissance

For 25 years, YourPaysitePartner has teamed up with stars and entrepreneurial brands to bring their one-stop-shop adult content dreams to life — and given the indie paysite renaissance of the past few years, the company’s efforts have paid off in spades.

Alejandro Freixes ·
opinion

WIA Profile: B. Wilde

B. Wilde considers herself a strategic, creative, analytical and entertaining person by nature — all useful traits for a “marketing girlie,” a label she happily embraces.

Women In Adult ·
opinion

Proportionality in Age Verification

Ever-evolving age verification (AV) regulations make it critical for companies in the adult sector to ensure legal compliance while protecting the privacy of adults wishing to view adult content. In the past, however, adult sites implementing AV solutions have seen up to a 60% drop in traffic as a result.

Gavin Worrall ·
opinion

Goodbye to Noncompete Agreements in the US?

A noncompetition agreement, also known as a noncompete clause or covenant not to compete, is a contract between an employer and an employee, or between two companies.

Corey D. Silverstein ·
opinion

The Search for Perfection in Your Payments Page

There has been a lot of talk about changes to cross sales and checkout pages. You have likely noticed that acquirers are now actively pushing back on allowing merchants to offer a negative option, upsell or any cross sales on payment pages.

Cathy Beardsley ·
Show More