Posted on Leave a comment

Creating a virtual stage when in-person isn’t possible

The Azure Kinect camera captures depth information with an infrared light and that data helps make the AI model more accurate. We used an app called Speaker Recorder to manage two video signals from the Azure Kinect camera, the RGB signal and the depth signal. Once the recording was complete, the AI model was applied through a command line tool. To get the full details on how this all came together, check out the Microsoft AI Lab.

The AI model we used is based on the work recently published by the University of Washington. In their research, the university developed a deep neural network that takes two images, one with a background and another one with a person in it. The output of the neural network is a smooth transparency mask.

This neural network was trained with images where the masking work was done manually. The UW researchers used a dataset provided by Adobe with many images where a designer manually created the transparency mask.

With this approach, the neural network can learn how to smooth areas like hair or lose clothing. However, there are some limitations. If the person is wearing something with a similar color to the background, the system renders it as holes in the image which defeats the illusion.

So, what the UW researchers did is to combine this method with another. A second neural network tries to guess the contour just by looking at the image. In the case of our virtual stage we know that we have a person on screen, so the neural network tries to identify the silhouette of that person. Adding this second neural network eliminates the color transparency issue but the small details like hair or the fingers can be an issue.

So, here’s the interesting part. The UW researchers created an architecture called Context Switching. Depending on the conditions, the system can pick the best solution, getting the best of the two.

In our case, because we are using Azure Kinect, we can go a step farther and replace the second neural network with the silhouette provided by the Kinect, which is much more accurate since it’s coming from the depth information captured.

The model is improved even more with another AI technique called adversarial network. We connect the output of our neural network with another neural network that identifies if an image is fake or real. This makes small variations to the original neural network to fool it. The result is a neural network that can create even more natural images.

Posted on Leave a comment

Microsoft Build 2020: Empowering developers to deliver impact today and tomorrow

For the past several years, developers from around the world have gathered here in Seattle, the original “Cloud City,” to meet, exchange ideas, hone or learn skills, build community. This year, we won’t be meeting in person, but the spirit of the event will continue as we move online – and the response we’ve received from our community of developers looking to learn, connect and code at Microsoft Build 2020 has been overwhelming, and quite frankly, humbling. This will likely be our biggest event ever … not just for Build, but for all the events that Microsoft holds. Wow.

The title of our show is a fitting mantra to this unprecedented era we find ourselves in: Build.

Socrates (not the Greek philosopher; the gas station attendant) once said: “The secret of change is to focus all of your energy, not on fighting the old, but on building the new.” We believe the developer community is the next wave to join the ranks of those who will build and re-build organizations, industries, communities.

This week, we celebrate the critical role of developers and their tireless efforts to rally during this time of crisis. We’ve unveiled a range of new tools and services to meet their needs to provide immediate impact and value, empowering innovations that help organizations and individuals achieve more.

As work environments evolve, you’ll see how we’re creating solutions to help companies build, rebuild and thrive, including new tools that enable developers to design and deliver artificial intelligence (AI) applications in an ethical and responsible way, as well as help them build connected productivity experiences.

You’ll see an emphasis on impact and value, delivering solutions within Azure, M365 and Windows – from tools to help developers be more collaborative and productive at work, to services that give customers the flexibility to deploy AI capabilities in any environment – and with no prior coding experience.

And finally, you’ll see a nod to technical excellence, and how we’re looking to help developers achieve more in the future through AI and other technology advancements.

Key news highlights:

  • We’re introducing Azure Synapse Link, bringing operational database services and analytics together in real-time. Launched initially in Azure Cosmos DB, but coming soon to all operational systems, Azure Synapse Link helps customers lower costs and reduce time to gain valuable insights without managing data movement.
  • Platform enhancements to Microsoft Teams include a streamlined experience for developers to build and publish Teams apps from Visual Studio and Visual Studio Code; the ability for IT admins to evaluate and deploy line-of-business and ISV applications for their users in Teams; and new ways for people to discover and engage with apps in Teams.
  • We are announcing updates to Fluid Framework, including making it open source to developers, and introducing the first way for end users to experience Fluid with the upcoming availability of Fluid components and Fluid workspaces in Office.com and Outlook for the Web.
  • We’re delivering new Responsible ML tools in Azure Machine Learning and our OSS toolkits to help customers deploy AI models more responsibly by improving model interpretability, reducing unfairness while ensuring data privacy and confidentiality.
  • To help unify app development across 1 billion Windows 10 devices we’re introducing Project Reunion: our vision for evolving the Windows developer platform to make it easier to integrate across Win32 and UWP APIs and build great apps that work across all the Windows 10 versions and devices people use.
  • We’re further investing in bringing comprehensive low-code Robotic Process Automation (RPA) technology into Power Automate with the acquisition of Softomotive, a leading provider of low-code, easy-to-use RPA development environments. Softomotive’s technology will complement UI flows to streamline how our customers get work done.
  • We’re announcing one of the world’s most powerful AI supercomputers built in Azure. Developed in collaboration with and exclusively for OpenAI, this supercomputer is purpose-built to train massive distributed AI models, giving it all the benefits of a dedicated appliance paired with the benefits of Azure’s robust modern cloud infrastructure.
  • We’re highlighting pitches from six finalist teams in this year’s Imagine Cup, and unveiling the 2020 champion as part of Microsoft’s commitment to helping students develop big, bold ideas by providing tools, programs and technology to learn the skills they’ll need to create. Top ideas include solutions that help improve treatment of youth living with mental illness; tools that help battle misinformation in the media; and technology that better enable physicians to detect early onset Parkinson’s disease and track patient progress throughout treatment plans.
  • And lastly, we’re introducing Microsoft Cloud for Healthcare, our first industry-specific cloud offering, which brings together capabilities for customers and partners to enrich patient engagement, connect caregiving teams, and improve collaboration, decision-making and operational efficiencies. Microsoft Cloud for Healthcare will support capabilities such as the new Bookings app in Teams, now generally available to customers across industries to help schedule, manage and conduct business-to-consumer virtual appointments. Teams supports HIPAA compliance and is HITRUST-certified.

Thanks for joining us this year as we try something – and build something – new together.

Be sure to check out all the highlights on our Microsoft Build site – including key segments from Microsoft executives – and other session content available virtually.

fxs

Tags: ,

Posted on Leave a comment

Registration now open for Build 2020

It’s not the Build we thought it would be, but it’s gonna be special. Today, we’re excited to share that registration for an all-new virtual Build experience is now open. We can’t wait to bring together our community of developers to learn, connect and code together.

While things will look a little different this year as we all absorb and adjust to new realities brought on  COVID-19, we’re excited about Microsoft Build 2020, a 48-hour virtual event starting May 19 at 8 a.m. PT that will kick off with welcome remarks from Satya Nadella. This will be followed by a session with and for Developers hosted by me (read more on my blog).

Here’s a little more of what you can expect at Build this year:

  • Two days of continuous learning in your time zone: Attend sessions, talks and demos carefully chosen to help developers be productive wherever you work, and drive innovation and transformation. You will hear from the engineers behind the products you use every day and connect with your peers in a digital event experience.
  • Build community connections: Expand your network and your perspective on what’s possible. Connect and collaborate with your peers from around the world and with the Microsoft engineers behind the tools and services you rely on.
  • Level up your coding: Discover new ways to take your code and application architecture to the next level with as we help you troubleshoot, optimize and secure your projects.
  • Helping developers today: We’re committed to support developers with cost-effective, efficient innovations that make people’s lives easier and better, especially in uncertain times. Today, we announced new lower pricing for Visual Studio Codespaces (formerly Visual Studio Online) so you can create cloud-hosted dev environments that are accessible from anywhere, from any device. Earlier this month, GitHub announced that all of its core features are now available for free to all users. You can expect more such announcements as we journey through Microsoft Build.

Register for the event here. I’m really proud of what we’re working on and I’m looking forward to sharing it with you all.

Tags: , ,

Posted on Leave a comment

How to contribute to Fedora

One of the great things about open source software projects is that users can make meaningful contributions. With a large project like Fedora, there’s somewhere for almost everyone to contribute. The hard part is finding the thing that appeals to you. This article covers a few of the ways people participate in the Fedora community every day.

The first step for contributing is to create an account in the Fedora Account System. After that, you can start finding areas to contribute. This article is not comprehensive. If you don’t see something you’re interested in, check out What Can I Do For Fedora or contact the Join Special Interest Group (SIG).

Software development

This seems like an obvious place to get started, but Fedora has an “upstream first” philosophy. That means most of the software that ends up on your computer doesn’t originate in the Fedora Project, but with other open source communities. Even when Fedora package maintainers write code to add a feature or fix a bug, they work with the community to get those patches into the upstream project.

Of course, there are some applications that are specific to Fedora. These are generally more about building and shipping operating systems than the applications that get shipped to the end users. The Fedora Infrastructure project on GitHub has several applications that help make Fedora happen.

Packaging applications

Once software is written, it doesn’t just magically end up in Fedora. Package maintainers are the ones who make that happen. Fundamentally, the job of the package maintainer is to make sure the application successfully builds into an RPM package and to generally keep up-to-date with upstream releases. Sometimes, that’s as simple as editing a line in the RPM spec file and uploading the new source code. Other times, it involves diagnosing build problems or adding patches to fix bugs or apply configuration settings.

Packagers are also often the first point of contact for user support. When something goes wrong with an application, the user (or ABRT) will file a bug in Red Hat Bugzilla. The Fedora package maintainer can help the user diagnose the problem and either fix it in the Fedora package or help file a bug in the upstream project’s issue tracker.

Writing

Documentation is a key part of the success of any open source project. Without documentation, users don’t know how to use the software, contributors don’t know how to submit code or run test suites, and administrators don’t know how to install and run the application. The Fedora Documentation team writes release notes, in-depth guides, and short “quick docs” that provide task-specific information. Multi-lingual contributors can also help with translation and localization of both the documentation and software strings by joining the localization (L10n) team.

Of course, Fedora Magazine is always looking for contributors to write articles. The Contributing page has more information. [We’re partial to this way of contributing! — ed.]

Testing

Fedora users have come to rely on our releases working well. While we emphasize being on the leading edge, we want to make sure releases are usable, too. The Fedora Quality Assurance team runs a broad set of test cases and ensures all of the release criteria are met before anything ships. Before each release, the team arranges test days for various components.

Once the release is out, testing continues. Each package update first goes to the updates-testing repository before being published to the main testing repository. This gives people who are willing to test the opportunity to try updates before they go to the wider community. 

Graphic design

One of the first things that people notice when they install a new Fedora release is the desktop background. In fact, using a new desktop background is one of our release criteria. The Fedora Design team produces several backgrounds for each release. In addition, they design stickers, logos, infographics, and many other visual elements for teams within Fedora. As you contribute, you may notice that you get awarded badges; the Badges team produces the art for those.

Helping others

Cooperative effort is a hallmark of open source communities. One of the best ways to contribute to any project is to help other users. In Fedora, that can mean answering questions on the Ask Fedora forum, the users mailing list, or in the #fedora IRC channel. Many third-party social media and news aggregator sites have discussion related to Fedora where you can help out as well.

Spreading the word

Why put so much effort into making something that no one knows about? Spreading the word helps our user and contributor communities grow. You can host a release party, speak at a conference, or share how you use Fedora on your blog or social media sites. The Fedora Mindshare committee has funds available to help with the costs of parties and other events.

Other contributions

This article only shared a few of the areas where you can contribute to Fedora. What Can I Do For Fedora has more options. If there’s something you don’t see, you can just start doing it. If others see the value, they can join in and help you. We look forward to your contributions!


Photo by Anunay Mahajan on Unsplash.