AI Headshot Business

AI Headshot Business — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Machine-learned interatomic potential

    Machine-learned interatomic potential

    Machine-learned interatomic potentials (MLIPs), or simply machine learning potentials (MLPs), are interatomic potentials constructed using machine learning. Beginning in the 1990s, researchers have employed such programs to construct interatomic potentials by mapping atomic structures to their potential energies. These potentials are referred to as MLIPs or MLPs. Such machine learning potentials promised to fill the gap between density functional theory, a highly accurate but computationally intensive modelling method, and empirically derived or intuitively-approximated potentials, which were far lighter computationally but substantially less accurate. Improvements in artificial intelligence technology heightened the accuracy of MLPs while lowering their computational cost, increasing the role of machine learning in fitting potentials. Machine learning potentials began by using neural networks to tackle low-dimensional systems. While promising, these models could not systematically account for interatomic energy interactions; they could be applied to small molecules in a vacuum, or molecules interacting with frozen surfaces, but not much else – and even in these applications, the models often relied on force fields or potentials derived empirically or with simulations. These models thus remained confined to academia. Modern neural networks construct highly accurate and computationally light potentials, as theoretical understanding of materials science was increasingly built into their architectures and preprocessing. Almost all are local, accounting for all interactions between an atom and its neighbor up to some cutoff radius. There exist some nonlocal models, but these have been experimental for almost a decade. For most systems, reasonable cutoff radii enable highly accurate results. Almost all neural networks intake atomic coordinates and output potential energies. For some, these atomic coordinates are converted into atom-centered symmetry functions. From this data, a separate atomic neural network is trained for each element; each atomic network is evaluated whenever that element occurs in the given structure, and then the results are pooled together at the end. This process – in particular, the atom-centered symmetry functions which convey translational, rotational, and permutational invariances – has greatly improved machine learning potentials by significantly constraining the neural network search space. Other models use a similar process but emphasize bonds over atoms, using pair symmetry functions and training one network per atom pair. Other models to learn their own descriptors rather than using predetermined symmetry-dictating functions. These models, called message-passing neural networks (MPNNs), are graph neural networks. Treating molecules as three-dimensional graphs (where atoms are nodes and bonds are edges), the model takes feature vectors describing the atoms as input, and iteratively updates these vectors as information about neighboring atoms is processed through message functions and convolutions. These feature vectors are then used to predict the final potentials. The flexibility of this method often results in stronger, more generalizable models. In 2017, the first-ever MPNN model (a deep tensor neural network) was used to calculate the properties of small organic molecules. == Gaussian Approximation Potential (GAP) == One popular class of machine-learned interatomic potential is the Gaussian Approximation Potential (GAP), which combines compact descriptors of local atomic environments with Gaussian process regression to machine learn the potential energy surface of a given system. To date, the GAP framework has been used to successfully develop a number of MLIPs for various systems, including for elemental systems such as carbon, silicon, phosphorus, and tungsten, as well as for multicomponent systems such as Ge2Sb2Te5 and austenitic stainless steel, Fe7Cr2Ni. == Equivariant graph neural networks == A significant limitation of early MPNNs was that they were not inherently equivariant to rotations and reflections of atomic structures — meaning predictions could change depending on how a molecule was oriented in space. Beginning around 2021, a new class of models addressed this by incorporating equivariance directly into the message-passing layers using spherical harmonics and irreducible representations. Notable examples include NequIP (2021), MACE (2022), and GemNet-OC (2022). These equivariant architectures proved substantially more data-efficient and accurate than their predecessors, and became the dominant paradigm for high-accuracy MLIPs. == Universal MLIPs and large-scale datasets == Early MLIPs were system-specific, trained on a few thousand structures of a single material. A major shift occurred with the creation of large, chemically diverse datasets enabling models that generalize across many elements, bonding environments, and application domains — so-called universal MLIPs. A key driver was the Open Catalyst Project (OC20, OC22), a collaboration between Meta AI (FAIR) and Carnegie Mellon University launched in 2020. OC20 comprises approximately 1.3 million DFT relaxations across 82 elements, designed to accelerate the discovery of catalysts for renewable energy applications. It was among the first datasets large enough to train GNNs that generalize across diverse chemical systems, and established a widely-used benchmark for the field. A subsequent dataset, Open Direct Air Capture (OpenDAC 2023 and OpenDAC 2025), applied the same approach to carbon capture, providing a large computational database of metal-organic frameworks and sorbent candidates evaluated for CO₂ capture, generated using nearly 400 million CPU hours of quantum chemistry calculations in collaboration with Georgia Tech. These datasets revealed a new challenge: the GNN architectures most effective for atomic simulations were memory-intensive, as they model higher-order interactions between triplets or quadruplets of atoms, making it difficult to scale model size. Graph Parallelism, introduced by Sriram et al. (ICLR 2022), addressed this by distributing a single input graph across multiple GPUs — a distinct strategy from data parallelism (which distributes training examples) or model parallelism (which distributes layers). This enabled training GNNs with hundreds of millions to billions of parameters for the first time. Building on these foundations, Meta FAIR released the Universal Model for Atoms (UMA) in 2025, trained on approximately 500 million unique 3D atomic structures spanning molecules, materials, and catalysts — the largest training run to date for an MLIP. UMA introduced a Mixture of Linear Experts (MoLE) architecture, enabling one model to learn from datasets generated by different DFT codes and settings without significant inference overhead. It matches or surpasses specialized models across catalysis, materials, and molecular benchmarks without task-specific fine-tuning, and has been described as marking a "pre/post-UMA" divide in the field. == Applications == Catalyst discovery: MLIPs have significantly accelerated the computational screening of heterogeneous catalysts by replacing expensive DFT relaxations with fast neural network surrogates. The Open Catalyst Project explicitly targets this application, aiming to identify new catalysts for green hydrogen production and other renewable energy reactions. Carbon capture: The OpenDAC project applies universal MLIPs to screening sorbent materials for direct air capture of CO₂, a key technology for climate change mitigation. AI-accelerated screening allows evaluation of orders of magnitude more candidate materials than traditional DFT workflows. Drug discovery and molecular design: MLIPs are increasingly used in pharmaceutical research to model molecular conformations and binding energies. The Open Molecules 2025 (OMol25) dataset, released by Meta FAIR in 2025, provides high-accuracy calculations for a large set of molecular systems to support this use case. Materials discovery: Universal MLIPs enable high-throughput screening of novel inorganic materials, including battery electrolytes, semiconductors, and superconductors, by rapidly estimating stability and properties across large chemical spaces.

    Read more →
  • Voice search

    Voice search

    Voice search, also called voice-enabled search, allows the user to use a voice to search the Internet, a website, or an app. In a broader definition, voice search includes open-domain keyword query on any information on the Internet, for example in Google Voice Search, Cortana, Siri and Amazon Echo. Voice search is often interactive, involving several rounds of interaction that allows a system to ask for clarification. Voice search is a type of dialog system. Voice search is not a replacement for typed search. Rather the search terms, experience and use cases can differ heavily depending on the input type. == Supported language == Language is the most essential factor for a system to understand, and provide the most accurate results of what the user searches. This covers across languages, dialects, and accents, as users want a voice assistant that both understands them and speaks to them understandably. While spoken and written languages differ, voice search should support natural spoken language instead of only transforming voice into text and doing a regular text search with the help speech recognition. For example, in typed search an eCommerce user can easily copy and paste an alphanumeric product code to search field, but when speaking the search terms can be very different, such as "show me the new Bluetooth headphones by Samsung". == How it works == The difference between text and voice search is not only the input type. The mechanism must include an automatic speech recognition (ASR) for input, but it can also include natural language understanding for natural spoken search queries such as "What's the population for the United States" It can include text-to-speech (TTS) or a regular display for output modalities. Users might sometimes be required to activate the search by using a wake word. Then, the search system will detect the language spoken by the user. It will then detect the keywords and context of the sentence. Lastly, the device will return results depending on its output. A device with a screen might display the results, while a device without a screen will speak them back to the searcher.

    Read more →
  • Shape factor (image analysis and microscopy)

    Shape factor (image analysis and microscopy)

    Shape factors are dimensionless quantities used in image analysis and microscopy that numerically describe the shape of a particle, independent of its size. Shape factors are calculated from measured dimensions, such as diameter, chord lengths, area, perimeter, centroid, moments, etc. The dimensions of the particles are usually measured from two-dimensional cross-sections or projections, as in a microscope field, but shape factors also apply to three-dimensional objects. The particles could be the grains in a metallurgical or ceramic microstructure, or the microorganisms in a culture, for example. The dimensionless quantities often represent the degree of deviation from an ideal shape, such as a circle, sphere or equilateral polyhedron. Shape factors are often normalized, that is, the value ranges from zero to one. A shape factor equal to one usually represents an ideal case or maximum symmetry, such as a circle, sphere, square or cube. == Aspect ratio == The most common shape factor is the aspect ratio, a function of the largest diameter and the smallest diameter orthogonal to it: A R = d min d max {\displaystyle A_{R}={\frac {d_{\min }}{d_{\max }}}} The normalized aspect ratio varies from approaching zero for a very elongated particle, such as a grain in a cold-worked metal, to near unity for an equiaxed grain. The reciprocal of the right side of the above equation is also used, such that the AR varies from one to approaching infinity. == Circularity == Another very common shape factor is the circularity (or isoperimetric quotient), a function of the perimeter P and the area A: f circ = 4 π A P 2 {\displaystyle f_{\text{circ}}={\frac {4\pi A}{P^{2}}}} The circularity of a circle is 1, and much less than one for a starfish footprint. The reciprocal of the circularity equation is also used, such that fcirc varies from one for a circle to infinity. == Elongation shape factor == The less-common elongation shape factor is defined as the square root of the ratio of the two second moments in of the particle around its principal axes. f elong = i 2 i 1 {\displaystyle f_{\text{elong}}={\sqrt {\frac {i_{2}}{i_{1}}}}} == Compactness shape factor == The compactness shape factor is a function of the polar second moment in of a particle and a circle of equal area A. f comp = A 2 2 π i 1 2 + i 2 2 {\displaystyle f_{\text{comp}}={\frac {A^{2}}{2\pi {\sqrt {{i_{1}}^{2}+{i_{2}}^{2}}}}}} The fcomp of a circle is one, and much less than one for the cross-section of an I-beam. == Waviness shape factor == The waviness shape factor of the perimeter is a function of the convex portion Pcvx of the perimeter to the total. f wav = P cvx P {\displaystyle f_{\text{wav}}={\frac {P_{\text{cvx}}}{P}}} Some properties of metals and ceramics, such as fracture toughness, have been linked to grain shapes. == An application of shape factors == Greenland, the largest island in the world, has an area of 2,166,086 km2; a coastline (perimeter) of 39,330 km; a north–south length of 2670 km; and an east–west length of 1290 km. The aspect ratio of Greenland is A R = 1290 2670 = 0.483 {\displaystyle A_{R}={\frac {1290}{2670}}=0.483} The circularity of Greenland is f circ = 4 π ( 2166086 ) 39330 2 = 0.0176. {\displaystyle f_{\text{circ}}={\frac {4\pi (2166086)}{39330^{2}}}=0.0176.} The aspect ratio is agreeable with an eyeball-estimate on a globe. Such an estimate on a typical flat map, using the Mercator projection, would be less accurate due to the distorted scale at high latitudes. The circularity is deceptively low, due to the fjords that give Greenland a very jagged coastline (see the coastline paradox). A low value of circularity does not necessarily indicate a lack of symmetry, and shape factors are not limited to microscopic objects.

    Read more →
  • List of 3D rendering software

    List of 3D rendering software

    3D rendering software products are the dedicated engines used for rendering computer-generated imagery. This is not the same as 3D modeling software, which involves the creation of 3D models, for which the software listed below can produce realistically rendered visualisations.General-purpose packages which can have their own built-in rendering capabilities are not listed here; these can be found in the list of 3D computer graphics software and list of 3D animation software. See 3D computer graphics software for more discussion about the distinctions.

    Read more →
  • List of Ruby software and tools

    List of Ruby software and tools

    This is a list of software and programming tools for the Ruby programming language, which includes libraries, web frameworks, implementations, tools, and related projects. == Web tools == Capistrano (software) – remote server automation tool Mongrel – Ruby web server Rack – interface between web servers and web applications Ruby on Rails – full-stack web application framework Sinatra – lightweight Ruby web application framework Spree Commerce – e-commerce platform WEBrick – Ruby HTTP server toolkit == Libraries == BioRuby – bioinformatics and computational biology library for Ruby Bogus – Ruby library for creating reliable test doubles with contract verification ERuby – embedded Ruby templating EventMachine – event-driven I/O library Factory Bot – test fixtures library Fat comma – Ruby library for JSON-like hash syntax Geocoder – Ruby library for geocoding and reverse geocoding addresses Haml – HTML templating engine Markaby – HTML generation via Ruby Nokogiri – XML/HTML parsing library RSpec – behavior-driven testing framework for Ruby RubyGems – package manager for Ruby libraries and applications Sass – CSS preprocessor Sidekiq – background job framework for Ruby, used to handle asynchronous tasks. Uconv – Unicode text conversion library Watir – web application testing framework == Ruby implementations == HotRuby – Ruby interpreter implemented in JavaScript, enabling Ruby code to run in web browsers. IronRuby – Ruby for .NET platform JRuby – Ruby on the Java Virtual Machine MacRuby – Ruby implementation for macOS Mod ruby – Apache module that embeds the Ruby interpreter to improve performance of Ruby web applications Mruby – lightweight Ruby interpreter Rubinius – alternative Ruby implementation, based loosely on the Smalltalk-80 Blue Book design. Ruby MRI – the standard Ruby interpreter YARV – "Yet Another Ruby VM," the bytecode interpreter used in modern Ruby implementations == Tools == Homebrew – package manager for macOS and Linux written in Ruby Pry – interactive Ruby shell Rake – build and task management Ruby Version Manager – environment manager RubyCocoa – bridge between Ruby and Cocoa RubyForge – project hosting site RubyMotion – for iOS/macOS development RubySpec – language specification tests == Integrated Development Environments == Aptana Studio — integrated RadRails plugin for Ruby on Rails development Eclipse DLTK Ruby Plugin — Ruby development plugin for Eclipse Eric — open-source Python-based IDE with Ruby support Komodo IDE — commercial cross-platform IDE with Ruby support RubyMine — commercial IDE for Ruby and Rails by JetBrains SlickEdit — commercial cross-platform IDE with Ruby support == List of websites using Ruby on Rails == Airbnb Basecamp Diaspora – decentralized social network application built with Ruby on Rails Discourse – open-source discussion platform built with Ruby on Rails Fiverr GitHub Hulu Shopify SoundCloud Twitch Zendesk

    Read more →
  • Colors!

    Colors!

    Colors! is a series of digital painting applications for handheld game consoles and mobile devices. Originally created as a homebrew application for Nintendo DS (as Colors!), which was since legitimately distributed on PlayStation Vita, iOS, and Android, the project eventually evolved into an officially licensed application for Nintendo 3DS (as Colors! 3D) and Nintendo Switch (as Colors Live). == History == === Colors! === Colors! was originally released in June 2007 as a simple homebrew painting application for the Nintendo DS. It was developed by Jens Andersson, a programmer and designer on sabbatical from the games industry who wanted to experiment with the potential of the new handheld platform. Shortly after, Rafał Piasek created an online gallery where users could upload paintings made with the program. Colors! quickly became one of the best-known homebrew applications on the Nintendo DS, and in September 2008, it was also released for the iPhone and iPod Touch. As of August 2010, it had been downloaded almost half a million times. It was voted the most popular homebrew application on the Nintendo DS by readers of the R4 for DS blog. Development of Colors! DS homebrew officially ended in December 2010 although the official gallery still accepted submissions from DS users until 2020 when Colors! Gallery was discontinued. === Colors! 3D === Colors! 3D is a successor to the application Colors! for the Nintendo 3DS. It was released as an officially licensed application for the Nintendo eShop in North America on April 5, 2012, and in the PAL region on April 19, 2012. It was later released in Japan on August 21, 2013, published by Arc System Works. Colors! 3D allows users to draw on five layers, each on their own stereoscopic 3D plane. Drawing is done on the bottom screen, while the top screen displays the painting in 3D. While drawing, players can use the various controls on the Nintendo 3DS to change layers, zoom and pan, and alter the pressure of their brush. Pressing the L button allows users to access a menu to change brush type, size, and opacity, modify the layers, use the camera to provide references, and more. When the user finishes their painting, they can export it to the SD card for viewing in the Nintendo 3DS Camera application. Users can also upload their finished creations to an online gallery, viewed on the 3DS or the official website. Gallery features include hashtags and the ability to follow artists and post comments. Each painting also features a replay feature that allows viewers to see how it was drawn. The application also features local multiplayer, allowing several people to work cooperatively on a painting. In April 2024, the developers of Colors! 3D collaborated with the Pretendo Network project to officially add support for the application, meaning Colors! 3D will continue to operate as normal when using Pretendo Network. ==== Reception ==== IGN gave the application a score of 9.0 and an Editor's Choice award, praising its simple interface and tutorials. Destructoid gave the app a 9.0, calling it "a simple and incredibly fun tool with an amazing community of artists proudly displaying their beautiful and funny 3D images." Nintendo Life gave the app a 9/10, stating, "Though lacking in any structured play, Colors! 3D’s robust free drawing system and unique ability to let anyone create their own three-dimensional artwork more than make up for this." === Colors Live === A Nintendo Switch successor called Colors Live (stylised as Colors L!ve) was released in 2020 after being funded via a Kickstarter campaign. This expanded upon the features of previous installments by adding new brushes, increasing the maximum number of layers to ten, and introducing blend modes. A new game mode called Colors Quest was also included. A pressure-sensitive pen called the Colors SonarPen was developed in collaboration with GreenBulb to facilitate drawing on the Nintendo Switch, and comes pre-bundled with physical copies of the game. ==== Colors Quest ==== This new mode acts as a story-driven adventure wherein players are given a daily drawing challenge with a specific theme and certain stipulations that must be fulfilled. Once the drawing is complete, players must anonymously score other players' submissions, these scores are then aggregated to produce a personal ranking that measures the improvement in the player's art skills over time.

    Read more →
  • PCPaint

    PCPaint

    PCPaint was one of the first IBM PC-based mouse-driven GUI paint programs, released in 1984. It followed after Microsoft Doodle, released in 1983 with the Microsoft Mouse version 1 drivers for DOS, and around the same time as Digital Research’s Draw program. It was developed and created by John Bridges and Doug Wolfgram. It was later developed into Pictor Paint. The hardware manufacturer Mouse Systems bundled PCPaint with millions of computer mice that they sold, making PCPaint one of the best-selling DOS-based paint programs of the mid 1980s. == History == In 1983, Doug Wolfgram bought a Microsoft Mouse and decided to write a drawing program for it. They named it “Mouse Draw”. The interface was primitive but the program functioned well. Wolfgram traveled to SoftCon in New Orleans where he demonstrated the program to Mouse Systems. Mouse Systems was developing an optical mouse and they wanted to bundle a painting program so they agreed to publish Mouse Draw. The original program was written entirely in assembly language with primitive graphics routines developed by Wolfgram. John Bridges worked for an educational software company, Classroom Consortia Media, Inc., developing and writing Apple and IBM graphics libraries for CCM's software. Bridges and Wolfgram were friends who had been connected through a bulletin board system developed and run by Wolfgram. The two collaborated cross country via the BBS, Wolfram in California and Bridges in New York. Mouse Systems wanted the paint program to capture the look and feel of MacPaint. John Bridges and Doug Wolfgram started reworking Mouse Draw into what became PCPaint. The program was completely re-written using Bridge's graphics library and the top-level elements were written in C rather than assembly language. Bridges developed the core graphics code for the first version of PCPaint while Wolfgram worked on the user interface and top-level code. Mouse Systems signed an exclusive agreement with Wolfgram's company, Microtex Industries, Inc., to bundle PCPaint with every mouse they sold. They began publishing PCPaint with their mice in 1984. Microsoft responded in 1985 by bundling a competing product, PC Paintbrush, with version 4 of its DOS drivers for the Microsoft Mouse, replacing its in-house Microsoft Doodle program which it published with version 1 of the DOS drivers in mid-1983. Microsoft’s mouse began to outsell Mouse Systems mouse. In November 1985 Microsoft bundled a cut-down version of PC Paintbrush with Windows 1.0 (called Microsoft Paint), later bundling an updated version of PC Paintbrush with Windows 3.0 (as Paintbrush), impacting PCPaint’s marketshare. In early 1987, Mouse Systems decided that PCPaint wasn't helping to sell mice any longer so they discontinued the bundle deal and returned rights to the code to MicroTex Industries, but retained rights to the name, PCPaint. Wolfgram then combined the paint program with a new animation system he was developing (called GRASP) and Paul Mace Software bought publishing rights to the animation system and PCPaint, which was to be renamed Pictor. Bridges again got involved and took over programming responsibilities for GRASP as well as PCPaint while Wolfgram focused on more of the business details. In creating the first version of PCPaint, Doug had a dual-floppy machine with a Computer Innovations compiler on one disk and source code on the other. John had the "luxury" of a 10MB hard disk in his XT. Data was exchanged daily via 1200, then 2400 baud modems. === Authorship and Ownership === John Bridges and Wolfgram continued to work on PCPaint and GRASP on behalf of Paul Mace Software until 1990. Also in that year, Doug Wolfgram sold his remaining rights to PCPaint (and its animation system, GRASP) to John Bridges. In 1994, GRASP development stopped and so did development of Pictor Paint. John Bridges terminated his GRASP publishing contract with Paul Mace Software, and went off to create GLPro (the next generation of GRASP) with GMEDIA. Along with GLPro, came GLPaint, the successor to PCPaint and Pictor Paint. == Versions == In June 1984, Mouse Systems shipped PCPaint 1.0, the first GUI based Paint program for the IBM PC family of computers. John Bridges and Doug Wolfgram, were the co-authors of PCPaint 1.0. PCPaint 1.0 saved its graphics in a modified BSaved image format with the extension of ".PIC". The release of PCPaint Version 1.5 followed in late 1984, with the additions of graphics image compression for the .PIC format and support for "larger-than-screen" images. PCjr support was also added in this version after overcoming severe memory shortage problems getting PCPaint to run on the 128k PCjr. October 1985 saw the release of PCPaint 2.0. EGA support and publishing features were added to this version. The .PIC format was further refined, offering support for the rapidly expanding graphics capabilities of the PC and efficient image compression. PCPaint 3.1 was released in 1989. Unlike previous versions, it was not bundled with mice but was sold as a stand-alone software product. PCPaint 3.1 offered improved text and image handling, provided 36 types of flood and fill, worked with VGA adapters in hi-res 16-color and 256-color modes, allowed the user to save and retrieve files in a variety of intercompatible formats (.PIC, .GIF, .PCX, .IMG), and printed selected portions of images on color or black-and-white dot matrix, ink jet, and laser printers such as PostScript and HP Laser Jet. PCPaint 3.1 is still in use today by some users of DOS emulation programs like DOSBox and available for free download. Pictor Paint was an improved version, written by John Bridges, and bundled with GRASP GRaphical System for Presentation also written by John Bridges. It was also called "The Painter's Easel". GLPaint, released in 1995, was the last in this series of paint programs written by John Bridges. By 1998 version 7.0 provided support for TrueColor images and the Pictor PIC format was expanded to handle these. == Pictor PIC Image Format == PCPaint 1.0 saved its graphics in a modified BSAVE image format (which was popular at the time) with the file type (extension) of ".PIC". By PCPaint 1.5 this format was extended further to accommodate image compression. With the release of version 2.0 the PICtor PIC image format was developed almost to its present state, with no similarity to the BSAVE format used by earlier versions. Pictor Paint saved its files in a compressed format with the file extension PIC, which was the same format used by PCPaint.

    Read more →
  • ImageMixer

    ImageMixer

    ImageMixer is a brand name of video editing software that edits digital video and still image in camcorders and authors to VCD and DVD. It is a second-party Japanese product, distributed by Pixela Corporation, a Japanese manufacturer of PC peripheral hardware and multimedia software. == Bundling == ImageMixer is widely used for several camcorder brands, such as JVC, Hitachi and Canon. Also, Sony has chosen to package ImageMixer with its DVD and HDD Handycam. == ImageMixer series == ImageMixer has other series of software for digital camera, such as ImageMixer Label Maker and ImageMixer DVD dubbing. ImageMixer also has movie editing solution for Macintosh. == Windows Vista version of ImageMixer == A Windows Vista version of ImageMixer has been developed (ImageMixer3).

    Read more →
  • Z-order

    Z-order

    Z-order is an ordering of overlapping two-dimensional objects, such as windows in a stacking window manager, shapes in a vector graphics editor, or objects in a 3D application. One of the features of a typical GUI is that windows may overlap, so that one window hides part or all of another. When two windows overlap, their Z-order determines which one appears on top of the other. == Definition == The term "Z-order" refers to the order of objects along the Z-axis. In coordinate geometry, X typically refers to the horizontal axis (left to right), Y to the vertical axis (up and down), and Z refers to the axis perpendicular to the other two (forward or backward). One can think of the windows in a GUI as a series of planes parallel to the surface of the monitor. The windows are therefore stacked along the Z-axis, and the Z-order information thus specifies the front-to-back ordering of the windows on the screen. An analogy would be some sheets of paper scattered on top of a table, each sheet being a window, the table your computer screen, and the top sheet having the highest Z value. == Use == Typically, users of a GUI can affect the Z-order by selecting a window to be brought to the foreground (that is, "above" or "in front of" all the other windows). Some window managers allow interaction with windows while they are not in the foreground, while others will bring a window to the front whenever it receives input from the user. It is also possible for special windows to be designated "always on top"; these are then fixed to the top of the Z-order so that (with few exceptions) no other window can overlap them. When dealing with visual objects on a computer screen, an object with a Z-order of 1 would be visually "underneath" an object with a Z-order of 2 or greater. This is the same as making "layers" of objects where the Z-order determines what object is on top of another. An HTML page can use CSS to specify the Z-order so that some objects can be layered over others. Z-ordering is also used in 3D applications to determine object visibility based on overlap from other objects. This confers a speed advantage to the user as the computer does not need to render unseen objects. In practice, of course, some objects may be only partially obscured, and this is a complication that must be taken into account. In early real-time 3D graphics, Z-order was applied on a per-polygon basis to avoid using Z-buffer, which was considered expensive at the time. In modern 3D graphics, Z-order is used for order-dependent rendering, for example with semi-transparent objects. It can also be used to reduce the problem of Z-fighting, by either rendering farther objects first and then using weak inequality as the depth test or, conversely, rendering front-to-back and using strict inequality. == z-index == The actual number assigned to a particular place in the Z-order is sometimes known as the z-index. In particular the CSS property that sets the stack order of specific elements is known as the z-index. An element with greater stack order is always in front of another element with lower stack order. Negative values can also be used in the same manner. A negative value will appear behind a positive one. z-index only works on elements that have a position value (e.g. position: relative;) and for many coders, this one of the first things to investigate when debugging why the z-index isn't working. Like all other CSS properties, it can be set with JavaScript, with the following syntax:

    Read more →
  • Pixlr

    Pixlr

    Pixlr is a group of SaaS creative tools including Pixlr.com, Designs.ai and Vectr.com. Pixlr.com is a cloud-based set of image editing tools and utilities, including AI image generation and enhancements. The Pixlr suite targets users who require subjectively simple, or more advanced, photo editing as well as graphic design. It features a freemium business model with subscription plans—Plus, Premium and Teams. The platform can be used on desktop and also smartphones and tablets. Pixlr is compatible with various image formats such as JPEG, PNG, WEBP, GIF, PSD (Photoshop Document) and PXZ (native Pixlr document format). Designs.ai lets users create content using AI, with a goal of being within two minutes, across different media types including videos, text, banners and audio. Vectr.com was acquired in 2017 before being spun out into Pixlr Group in 2023. == History == Pixlr was founded in 2008 and built on Macromedia Flash. On 19 July 2011, Autodesk announced that they had acquired the Pixlr suite. In 2013, Time listed Pixlr as one of the top 50 websites of the year. In 2017, Pixlr was acquired from Autodesk. It was subsequently rebuilt and relaunched in HTML5 in 2019. In September 2023, Pixlr was awarded as the Top 13 GenAi Web Product by the world's top venture firm Andreessen Horowitz. In November 2023, Pixlr, Designs.ai and Vectr were combined as a new business group named Pixlr Group focusing on generative AI and creative software solutions. In May 2024, Pixlr was featured as one of the top 18 progressive web applications highlighted on Google I/O. == Versions == Pixlr.com rebranded itself as a full creative suite in 2019 by introducing Pixlr X, Pixlr E and Pixlr M. The platform introduced more features in December 2021 with a new logo and added tools which included: Brushes, the 'Heal tool', Animation, and Batch upload. The brush feature enables the creation of hand-drawn effects. The Heal tool allows users to remove unwanted objects from their images whereas the Animation feature can be used to include movements into their edits. Users can also utilize Batch upload to edit up to 50 images simultaneously. In November 2022, Pixlr 2023 was launched, adding more tools such as "AI smart resize", colorization, text wrapping and other additional effects. In November 2023, Pixlr 2024 was launched with Pixlr Designer and new AI-powered updates which includes AI image generation, AI infill, AI inpainting and more.

    Read more →
  • Frameserver

    Frameserver

    A frameserver is any program that acts as a media source in the process called frameserving, which transfers digital video data from one computer program to another without intermediate files. The program that receives the data – the frameclient – could be any type of video application. The process is controlled by the frameclient: the frameclient requests audio/video frames and the frameserver serves them. The client can request frames in any order, allowing it to pause or jump to an arbitrary frame, just as a media player does with a file on disk. The client is most commonly a media encoder, a non-linear editing system, or a media player. == Frameservers == AviSynth VirtualDub VapourSynth Debugmode FrameServer

    Read more →
  • Productivity software

    Productivity software

    Productivity software (also called personal productivity software or office productivity software) is application software used for producing information (such as documents, presentations, worksheets, databases, charts, graphs, digital paintings, electronic music and digital video). Its names arose from it increasing productivity, especially of individual office workers, from typists to knowledge workers, although its scope is now wider than that. Office suites, which brought word processing, spreadsheet, and relational database programs to the desktop in the 1980s, are the core example of productivity software. They revolutionized the office with the magnitude of the productivity increase they brought as compared with the pre-1980s office environments of typewriters, paper filing, and handwritten lists and ledgers. In the United States, as of 2015, some 78% of "middle-skill" occupations (those that call for more than a high school diploma but less than a bachelor's degree) required the use of productivity software. == Details == Productivity software traditionally runs directly on a computer. For example, Plus/4 model of computer contains in ROM for applications of productivity software. Productivity software is one of the reasons people use personal computers. == Office suite == An office suite is a bundle of productivity software (a software suite) intended to be used by office workers. The components are generally distributed together, have a consistent user interface and usually can interact with each other, sometimes in ways that the operating system would not normally allow. The earliest office suite for personal computers was MicroPro International's StarBurst in the early 1980s, comprising the WordStar word processor, the CalcStar spreadsheet and the DataStar database software. Other suites arose in the 1980s, and Microsoft Office came to dominate the market in the 1990s, a position it retains as of 2024. During the 1990s, office suite products gained popularity by offering bundles of applications that, when bought as part of a suite, effectively discounted the individual applications, with four or five applications being bundled for the price of two applications bought separately. When faced with such potential savings, customers could be "tempted by the suite, rather than the value of a particular product", and by 1994 more than 60 percent of the sales of Microsoft Word and around 70 percent of the sales of Microsoft Excel were as part of sales of Microsoft Office. Such considerations had an impact on vendors of individual applications, often smaller companies, raising concerns that office suites were "stifling innovation", and even established vendors such as Borland and WordPerfect were having to adapt to the suite phenomenon, Borland ultimately deciding to sell its Quattro Pro spreadsheet to WordPerfect as the latter sought to assemble its own suite product. The dominant suite vendors, Microsoft and Lotus, downplayed competition and innovation concerns, claiming that users were still able to exercise choice and that "user-driven development" was guiding the evolution of office suites. Another view was that component-based software would eventually emerge, focusing development on more specialised components used by productivity software, empowering "a plethora of third-party developers", and that a "mix and match" approach of such components would adapt to the user's way of working. === Office suite components === The base components of office suites are: Word processor Spreadsheet Presentation program Other components include: Database software Graphics suite (raster graphics editor, vector graphics editor, image viewer) Desktop publishing software Formula editor Diagramming software Email client Communication software Personal information manager Notetaking Groupware Project management software Table (information) Web log analysis software

    Read more →
  • Software requirements

    Software requirements

    Software requirements for a system are the description of what the system should do, the service or services that it provides and the constraints on its operation. The IEEE Standard Glossary of Software Engineering Terminology defines a requirement as: A condition or capability needed by a user to solve a problem or achieve an objective A condition or capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification, or other formally imposed document A documented representation of a condition or capability as in 1 or 2 The activities related to working with software requirements can broadly be broken down into elicitation, analysis, specification, and management. Note that the wording Software requirements is additionally used in software release notes to explain, which depending on software packages are required for a certain software to be built/installed/used. == Elicitation == Elicitation is the gathering and discovery of requirements from stakeholders and other sources. A variety of techniques can be used such as joint application design (JAD) sessions, interviews, document analysis, focus groups, etc. Elicitation is the first step of requirements development. == Analysis == Analysis is the logical breakdown that proceeds from elicitation. Analysis involves reaching a richer and more precise understanding of each requirement and representing sets of requirements in multiple, complementary ways. Requirements Triage or prioritization of requirements is another activity which often follows analysis. This relates to Agile software development in the planning phase, e.g. by Planning poker, however it might not be the same depending on the context and nature of the project and requirements or product/service that is being built. == Specification == Specification involves representing and storing the collected requirements knowledge in a persistent and well-organized fashion that facilitates effective communication and change management. Use cases, user stories, functional requirements, and visual analysis models are popular choices for requirements specification. == Validation == Validation involves techniques to confirm that the correct set of requirements has been specified to build a solution that satisfies the project's business objectives, and to detect and correct errors in the requirements before implementation. == Management == Requirements change during projects and there are often many of them. Management of this change becomes paramount to ensuring that the correct software is built for the stakeholders. == Tool support for Requirements Engineering == === Tools for Requirements Elicitation, Analysis and Validation === Taking into account that these activities may involve some artifacts such as observation reports (user observation), questionnaires (interviews, surveys and polls), use cases, user stories; activities such as requirement workshops (charrettes), brainstorming, mind mapping, role-playing; and even, prototyping; software products providing some or all of these capabilities can be used to help achieve these tasks. There is at least one author who advocates, explicitly, for mind mapping tools such as FreeMind; and, alternatively, for the use of specification by example tools such as Concordion. Additionally, the ideas and statements resulting from these activities may be gathered and organized with wikis and other collaboration tools such as Trello. The features actually implemented and standards compliance vary from product to product. === Tools for Requirements Specification === A Software requirements specification (SRS) document might be created using general-purpose software like a word processor or one of several specialized tools. Some of these tools can import, edit, export and publish SRS documents. It may help to make SRS documents while following a standardised structure and methodology, such as ISO/IEC/IEEE 29148:2018. Likewise, software may or not use some standard to import or export requirements (such as ReqIF) or not allow these exchanges at all. === Tools for Requirements Document Verification === Tools of this kind verify if there are any errors in a requirements document according to some expected structure or standard. === Tools for Requirements Comparison === Tools of this kind compare two requirement sets according to some expected document structure and standard. === Tools for Requirements Merge and Update === Tools of this kind allow the merging and update of requirement documents. === Tools for Requirements Traceability === Tools of this kind allow tracing requirements to other artifacts such as models and source code (forward traceability) or, to previous ones such as business rules and constraints (backwards traceability). === Tools for Model-Based Software or Systems Requirement Engineering === Model-based systems engineering (MBSE) is the formalised application of modelling to support system requirements, design, analysis, verification and validation activities beginning in the conceptual design phase and continuing throughout development and later lifecycle phases. It is also possible to take a model-based approach for some stages of the requirements engineering and, a more traditional one, for others. Very many combinations might be possible. The level of formality and complexity depends on the underlying methodology involved (for instance, i is much more formal than SysML and, even more formal than UML) === Tools for general Requirements Engineering === Tools in this category may provide some mix of the capabilities mentioned previously and others such as requirement configuration management and collaboration. The features actually implemented and standards compliance vary from product to product. There are even more capable or general tools that support other stages and activities. They are classified as ALM tools.

    Read more →
  • Signal transfer function

    Signal transfer function

    The signal transfer function (SiTF) is a measure of the signal output versus the signal input of a system such as an infrared system or sensor. There are many general applications of the SiTF. Specifically, in the field of image analysis, it gives a measure of the noise of an imaging system, and thus yields one assessment of its performance. == SiTF evaluation == In evaluating the SiTF curve, the signal input and signal output are measured differentially; meaning, the differential of the input signal and differential of the output signal are calculated and plotted against each other. An operator, using computer software, defines an arbitrary area, with a given set of data points, within the signal and background regions of the output image of the infrared sensor, i.e. of the unit under test (UUT), (see "Half Moon" image below). The average signal and background are calculated by averaging the data of each arbitrarily defined region. A second order polynomial curve is fitted to the data of each line. Then, the polynomial is subtracted from the average signal and background data to yield the new signal and background. The difference of the new signal and background data is taken to yield the net signal. Finally, the net signal is plotted versus the signal input. The signal input of the UUT is within its own spectral response. (e.g. color-correlated temperature, pixel intensity, etc.). The slope of the linear portion of this curve is then found using the method of least squares. == SiTF curve == The net signal is calculated from the average signal and background, as in signal to noise ratio (imaging)#Calculations. The SiTF curve is then given by the signal output data, (net signal data), plotted against the signal input data (see graph of SiTF to the right). All the data points in the linear region of the SiTF curve can be used in the method of least squares to find a linear approximation. Given n {\displaystyle n\,} data points ( x i , y i ) {\displaystyle (x_{i}\,,y_{i}\,)} a best fit line parameterized as y = m x + b {\displaystyle y=mx+b\,} is given by: m = ∑ x i y i n − ∑ x i n ∑ y i n ∑ x i 2 n − ( ∑ x i n ) 2 b = ∑ y i n − m ∑ x i n {\displaystyle m={\frac {{\frac {\sum x_{i}y_{i}}{n}}-{\frac {\sum x_{i}}{n}}{\frac {\sum y_{i}}{n}}}{{\frac {\sum x_{i}^{2}}{n}}-({\frac {\sum x_{i}}{n}})^{2}}}\qquad \qquad b={\frac {\sum y_{i}}{n}}-m{\frac {\sum x_{i}}{n}}}

    Read more →
  • Fluency Voice Technology

    Fluency Voice Technology

    Fluency Voice Technology was a company that developed and sold packaged speech recognition solutions for use in call centers. Fluency's Speech Recognition solutions are used by call centers worldwide to improve customer service and significantly reduce costs and are available on-premises and hosted. == History == 1998 – Fluency was created as a spin-off from the Voice Research & Development team of a company called netdecisions. This R&D operation was established in Cambridge UK. The focus of the development was speech recognition systems based on the VXML standard. 2001 – Fluency became a separate entity in May 2001. Fluency began the creation of a software development platform specifically aimed at automating call center activities. This platform became Fluency's VoiceRunner. 2002 to 2004 – Fluency establishes accomplishes many successful deployments in customer sites such as National Express and Barclaycard. 2003 – Fluency expanded into the USA. Fluency also acquires Vocalis of Cambridge, UK in August 2003. 2004 – Fluency receives £6 million investment from leading European Venture Capitalists and establishes a global OEM partnership with Avaya, and the acquisition of SRC Telecom. 2008 – Fluency is acquired by Syntellect Ltd == Customers == Call Centers around the world use Fluency to improve service and reduce costs. They include Travelodge, Standard Life Bank, Sutton and East Surrey Water, Pizza Hut, CWT, Barclays, Powergen, First Choice, OutRight, J D Williams, Capital Blue Cross, Chelsea Building Society, EDF, bss, TV Licensing and Capita Software Services.

    Read more →