analysing video stream for conditions - azure

Not entirely new to azure, but new to the Media Services available on azure. I am looking for suggestion on what azure components I should consider to build a solution to analyze video for certain conditions.
(e.g. 1) Presence of a human - Yes/No, 2) alert if no human presence detected for a certain number of minutes, 3) confirmation if identified human is wearing a uniform or not, etc. )
I have built a somewhat similar on-premise solution in the past using OpenCV & some open source ML libraries, not sure what azure services I can use if this will be running in Azure.
I can live stream this to azure and am not looking for an edge solution.
I looked up azure video indexer and it looks promising, but probably more tuned for audio analysis rather then image frame analysis.
suggestions would be appreciated.

Azure video indexer is optimized for files, not streams, but is capable of meeting the requirement since it detect faces and people (in advanced preset).
Regarding uniform or not, this is not supported in video indexer at the moment but ability to detect cloth color will come in the future.

By fragmenting the video, Azure Video Indexer provides a near live solution. It means there will be a few minutes delay, so it depends on how time-sensitive your requirements are.
Regarding your second question, it will be possible to customize a model to identify specific uniforms in a few months. When the bounding boxes of the uniforms match the bounding boxes of the detected people, you can identify if a person is wearing a uniform.

Related

What are the third party solutions available for setting up enterprise search for an organization and important advantages of them?

We are currently working on setting up enterprise level search and need to evaluate the performance of different solutions available in the market. We need insights from experienced people in this field.
Thank you for helping.
P.S- I am new to this platform so may have made some mistake
Micro Focus IDOL (Intelligent Data Operating Layer) provides an excellent platform search and knowledge discovery across the enterprise. We have a wide variety of connectors for the various content repositories in a typical enterprise. IDOL can detect and extract information from over 1000 file types.
Audio, Video and Images are also sources of information and IDOL can perform speech to text, OCR, image classification and a host of visual / audio analytics on unstructured content.
IDOL does all of this while respecting the security model of the content repository. It can map the security so the secure search results are returned in sub second responses. IDOL can map security of a user across the various content repositories. So if a user goes by usernameA in repo1 and user name A in repo2, its possible to map it easily in IDOL.
The strength of IDOL is the Adaptive Probablistic Concept Modelling capability which improves over a large volume of documents. So for example if you wanted to know what are the core concepts discussed in documents in a particular SharePoint site or File Share we can easily do this without firing a single keyword query to IDOL.
Recent advances in Natual Language Question and Answering has enabled the IDOL platform to literally ask a question to your document corpus. So a typical question would be, "Where does the code of conduct say about expense reimbursements on international trips?" and rather than going through each link. We can extract the passage most relevant to the question from 100s of documents and present the answer to the user.

Private messages and machine learning

I have a few questions:
It is possible to implement a "private messages" within GetStream?
Or, for example, can I combine Getstream API with http://social-stream.dit.upm.es/ ? (this system written on ROR).
It is possible to control and change algorithm, how Machine learning works in getstream.io ?
I mean, I found not much information about Machine learning in documentation and getstream account. Maybe I can read about it somewhere in more detail?
Machine learning works only on paid plans or in free plan also?
getstream.io have specific API for Machine learning purpose?
For example, if we write some additional features, like "private messages" on our side, which GetStream don't have in API, how we can apply Machine learning on this new features?
You may ask, "why you need a Machine learning for PM"?
Not only PM. Here a few examples:
a) If user have some keyword in PM - we can determine what the topic is interesting to the user.
b) In another scenario - we can analyze images (we use our engine for that purpose) in posts and if some image contain correlation between keywords and specific topic and if we look at who like/vote this image - we can show him more relative content.
c) There is dozens another examples, which we need to control Machine learning process.
Even if we implement Machine learning on our side (from zero, just "for private messages" and other related stuff), how we can connect our results in machine learning with results in GetStream? If we will use it separately, it can be inefficient and bring unpredictable results (even negative).
I want to clarify, I am not a developer. I am owner, but understand very well the project management and the entire development process.
My question is a lack of understanding of how the API works.
Thanks in advance!
Stream helps you build activity streams and newsfeeds. A central aspect of that is the follow relationship. The same building blocks also make it easy to build notification feeds and private messages. Stream isn't build for private messages, but we have dozens of apps using us for that purpose. It works for many apps, but depending on your feature set your milage may vary.
As for your second question. Stream provides scalable newsfeeds, analytics and personalization (machine learning). For larger customers we extensively customize the machine learning component. There are similarities between apps, but it's definitely something which needs to be tailor made. At the moment analytics and personalization are only available to our largest customers. More information can be found here: http://getstream.io/personalization/
Using your own machine learning and Stream's at the same time is pretty easy. You simply track engagement events both in Stream and in your own system. That will allow you to run your own analysis.

API to generate server-side static visualizations of sound clips

I'm developing an app that will pull in static PNG visualizations of sound clips (30 seconds max). The images will then act as the background image of the player / scrubber in the UI.
I'm looking for APIs / tools that would support the processing and visualization of sound clips on the back-end, generating and saving a quality PNG. I thought Processing might be an option, but am not yet sure if it has these specific capabilities (it's also not really designed to be server-side). Any and all suggestions would be great.
Related - if anyone is an expert in this, and can give me insight into the type of data that can be extracted and visualized from sound, that would also be great. Though, I am hoping by identifying possible tools or APIs, that information will become more clear.
Thank you.
Claudia

IIS Smooth Streaming encoding with Azure?

I'm working on a project for teachers and students to be able to have a medium to interact with one another using Azure as a medium for content delivery. However, since this is basically a free service (and a non-profit site), not every teacher can buy a copy of Encoder Pro to encode their streams.
This is where I'm at a crossroads and not sure what path to go down. I want teachers to be able to stream their desktops and interact with students, probably using the MSN chat services or facebook chat services since it's infrastructure that I don't need to pay for. However, additionally the question is how do they capture their desktop? And would Azure be able to convert that into a "smooth streaming" file, so that people with lower bandwith connections can see the stream reliabily? I know Azure can function as a CDN, but I'm not sure if it can do the conversion to live smooth streaming so that students can actually make use of the service.
Any ideas would be helpful.. I'm kind of brainstorming right now and working on the client end of things, but I've slowed down until I can figure out this problem.
Thanks!
To answer part of your question, Azure recently added a Media Services component. It's still in preview mode (free for now). Think of it as a hosted Expression Encoder Pro exposed with a bunch of APIs. For more info https://www.windowsazure.com/en-us/develop/net/how-to-guides/media-services/

Linux video conversion

I'm attempting to create a simple video conversion app which accepts any video format and then formats it into the desired format "automagically" all while attempting to keep aspect ratio and sound quality consistent. I do a ton of video converting and it would be handy for me to just shoot it off to a server to do all the converting while I work on other projects.
After some research it looks like FFMPEG is my best bet ...
Anyone have any thoughts? Is there a open source project that has already done this / code that I might have missed or looked over?
I donot recommend hosting such a service yourself. I think you should be able to find 'off-the-shelf' cloud provider with 'instant' transcoding machines on-demand.
You are not looking for application hosting, such as GAE, you are looking for P aaS (Platform as a Service), such as Azure, AWS EC2; Here is a good comparison:
https://softwareengineering.stackexchange.com/questions/64727/windows-azure-vs-amazon-ec2-vs-google-app-engine (note the answer by a GAE developer).
Basically, PaaS should be able to deliver you computing units (where you are specifically expected to utilize the full CPU (etc) potential of the instance - after that, you just terminate the instance; you pay by the hour, and you scale up as required; You can equally good run 1 small instance for a month, or run 60 large instances for a few hours and work out the financial equation).
I do remember seeing pre-existing cloud images precisely for doing video transcoding - don't remember where exactly, but look around at rightscale.com (which works with Rackspace and EC2 IIRC, perhaps more these days).
ffmpeg is easily the best choice for this. I use ffmpeg in my Python DLNA Digital Media Server to convert video files of any kind to the type expected by my television.
I've had a play with VLC's dummy interface, and mencoder, and neither came close to ffmpeg's usability.

Resources