Hit-testing

Hit-testing

In computer graphics programming, hit-testing (hit detection, picking, or pick correlation) is the process of determining whether a user-controlled cursor (such as a mouse cursor or touch-point on a touch-screen interface) intersects a given graphical object (such as a shape, line, or curve) drawn on the screen. Hit-testing may be performed on the movement or activation of a mouse or other pointing device. Hit-testing is used by GUI environments to respond to user actions, such as selecting a menu item or a target in a game based on its visual location. In web programming languages such as HTML, SVG, and CSS, this is associated with the concept of pointer-events (e.g. user-initiated cursor movement or object selection). Collision detection is a related concept for detecting intersections of two or more different graphical objects, rather than intersection of a cursor with one or more graphical objects. == Algorithm == There are many different algorithms that may be used to perform hit-testing, with different performance or accuracy outcomes. One common hit-test algorithm for axis aligned bounding boxes. A key idea is that the box being tested must be either entirely above, entirely below, entirely to the right or left of the current box. If this is not possible, they are colliding. Example logic is presented in the pseudo-code below: In Python:

Deep image prior

Deep image prior is a type of convolutional neural network used to enhance a given image with no prior training data other than the image itself. A neural network is randomly initialized and used as prior to solve inverse problems such as noise reduction, super-resolution, and inpainting. Image statistics are captured by the structure of a convolutional image generator rather than by any previously learned capabilities. == Method == === Background === Inverse problems such as noise reduction, super-resolution, and inpainting can be formulated as the optimization task x ∗ = m i n x E ( x ; x 0 ) + R ( x ) {\displaystyle x^{}=min_{x}E(x;x_{0})+R(x)} , where x {\displaystyle x} is an image, x 0 {\displaystyle x_{0}} a corrupted representation of that image, E ( x ; x 0 ) {\displaystyle E(x;x_{0})} is a task-dependent data term, and R(x) is the regularizer. Deep neural networks learn a generator/decoder x = f θ ( z ) {\displaystyle x=f_{\theta }(z)} which maps a random code vector z {\displaystyle z} to an image x {\displaystyle x} . The image corruption method used to generate x 0 {\displaystyle x_{0}} is selected for the specific application. === Specifics === In this approach, the R ( x ) {\displaystyle R(x)} prior is replaced with the implicit prior captured by the neural network (where R ( x ) = 0 {\displaystyle R(x)=0} for images that can be produced by a deep neural networks and R ( x ) = + ∞ {\displaystyle R(x)=+\infty } otherwise). This yields the equation for the minimizer θ ∗ = a r g m i n θ E ( f θ ( z ) ; x 0 ) {\displaystyle \theta ^{}=argmin_{\theta }E(f_{\theta }(z);x_{0})} and the result of the optimization process x ∗ = f θ ∗ ( z ) {\displaystyle x^{}=f_{\theta ^{}}(z)} . The minimizer θ ∗ {\displaystyle \theta ^{}} (typically a gradient descent) starts from a randomly initialized parameters and descends into a local best result to yield the x ∗ {\displaystyle x^{}} restoration function. ==== Overfitting ==== A parameter θ may be used to recover any image, including its noise. However, the network is reluctant to pick up noise because it contains high impedance while useful signal offers low impedance. This results in the θ parameter approaching a good-looking local optimum so long as the number of iterations in the optimization process remains low enough not to overfit data. === Deep Neural Network Model === Typically, the deep neural network model for deep image prior uses a U-Net like model without the skip connections that connect the encoder blocks with the decoder blocks. The authors in their paper mention that "Our findings here (and in other similar comparisons) seem to suggest that having deeper architecture is beneficial, and that having skip-connections that work so well for recognition tasks (such as semantic segmentation) is highly detrimental." == Applications == === Denoising === The principle of denoising is to recover an image x {\displaystyle x} from a noisy observation x 0 {\displaystyle x_{0}} , where x 0 = x + ϵ {\displaystyle x_{0}=x+\epsilon } . The distribution ϵ {\displaystyle \epsilon } is sometimes known (e.g.: profiling sensor and photon noise) and may optionally be incorporated into the model, though this process works well in blind denoising. The quadratic energy function E ( x , x 0 ) = | | x − x 0 | | 2 {\displaystyle E(x,x_{0})=||x-x_{0}||^{2}} is used as the data term, plugging it into the equation for θ ∗ {\displaystyle \theta ^{}} yields the optimization problem m i n θ | | f θ ( z ) − x 0 | | 2 {\displaystyle min_{\theta }||f_{\theta }(z)-x_{0}||^{2}} . === Super-resolution === Super-resolution is used to generate a higher resolution version of image x. The data term is set to E ( x ; x 0 ) = | | d ( x ) − x 0 | | 2 {\displaystyle E(x;x_{0})=||d(x)-x_{0}||^{2}} where d(·) is a downsampling operator such as Lanczos that decimates the image by a factor t. === Inpainting === Inpainting is used to reconstruct a missing area in an image x 0 {\displaystyle x_{0}} . These missing pixels are defined as the binary mask m ∈ { 0 , 1 } H × V {\displaystyle m\in \{0,1\}^{H\times V}} . The data term is defined as E ( x ; x 0 ) = | | ( x − x 0 ) ⊙ m | | 2 {\displaystyle E(x;x_{0})=||(x-x_{0})\odot m||^{2}} (where ⊙ {\displaystyle \odot } is the Hadamard product). The intuition behind this is that the loss is computed only on the known pixels in the image, and the network is going to learn enough about the image to fill in unknown parts of the image even though the computed loss doesn't include those pixels. This strategy is used to remove image watermarks by treating the watermark as missing pixels in the image. === Flash–no-flash reconstruction === This approach may be extended to multiple images. A straightforward example mentioned by the author is the reconstruction of an image to obtain natural light and clarity from a flash–no-flash pair. Video reconstruction is possible but it requires optimizations to take into account the spatial differences. == Implementations == A reference implementation rewritten in Python 3.6 with the PyTorch 0.4.0 library was released by the author under the Apache 2.0 license: deep-image-prior A TensorFlow-based implementation written in Python 2 and released under the CC-SA 3.0 license: deep-image-prior-tensorflow A Keras-based implementation written in Python 2 and released under the GPLv3: machine_learning_denoising == Example == See Astronomy Picture of the Day (APOD) of 2024-02-18

Digital inclusion

Digital inclusion involves the activities necessary to ensure equitable access to and use of information and communications technologies for participation in social and economic life including for education, social services, health, social, and community participation. Digital inclusion includes access to affordable broadband Internet services, Internet-enabled devices, access to digital literacy training, quality technical support, and applications and online content designed to enable and encourage self-sufficiency, participation, and collaboration. Related concepts include digital divide, digital exclusion and digital inequality, however digital inclusion focuses more on the strategies, policies, and programs required to address the digital divide. As many services have moved online and with the increasing use of telehealth to deliver primary care, particularly during the COVID-19 pandemic in 2020, digital inclusion, including digital literacy and internet access is increasingly regarded as a social determinant of health. Accessibility, relevance, and impact have been identified as essential elements of digital inclusion as it pertains to health information systems. "Digital inclusion is broadly defined as different strategies designed to ensure that all people have equal access, opportunities and skills to benefit from digital technologies and systems" (ITU, 2019, as cited in Carmi and Yates, 2020). Since 2020, there have been many technology companies that have begun implementing different features or roles within their companies to support breaking down the digital divide. For example, HP has announced the digital divide accelerator. This accelerator will support nonprofits in Greece, Indonesia, Nigeria, and Spain. The goal for this role is to help equip children and other people within the community to understand the skills needed to become a part of the digital community. == Background == With the increasing use of computers and the Internet in the 1990s and early 2000s concerns rose around digital equality, however this primarily focused on the physical access to technology. This gave rise to the concept of the digital divide which was originally developed to describe the growing disparity in Internet access between rural and urban areas of the United States of America. This gradually expanded to considerations of digital access between countries in what is termed the global digital divide, which mirrors many of the disparities seen within countries but on an international scale. However, with the adoption of digital technologies across most sectors of society, and the increasing diversity of technologies and programs, access and use of ICT became more complex and essential for many aspects of daily life. This led to new terminology and a second wave of research on digital inequality which has been identified as the (1) usage gap, (2) second level digital divide, (3) emerging digital differentiation, and (4) digital inclusion. == Strategies for digital inclusion == A review of the literature in 2019 found that while physical access to digital technologies and the internet continues to be a barrier to digital inclusion, digital ability and attitude were also potential barriers. Key strategies identified for improving digital inclusion are social support, direct user experience and collaborative learning/design. Education is a key aspect of digital inclusion as digital technologies have become a key means of engaging with all levels of the education system, requiring levels of digital competence for successful engagement with the curriculum. In addition lifelong learning is required as technologies, services and systems are changing constantly. Public libraries and community service providers play a key role in supporting digital inclusion through access to computers, internet connection and expertise and training. Designing for digital inclusion may also help with poor written literacy, which remains a barrier for 10% of the world's population. UNESCO has developed Guidelines for designing digital technologies in ways that could assist those who are illiterate. == Indigenous digital inclusion == Digital inclusion is a critical issue for many Indigenous communities across the globe, many of whom lack access to adequate resources. The Australian Government has set a National Closing the Gap target for Aboriginal and Torres Strait Islander people to have equal levels of digital inclusion by 2026. Many people on tribal land and in Native Hawaiian land struggle with the technology gap. The Native Entities Capacity and Planning Grant Program has $45.3 million available to help address these challenges and empower Indian Tribes, Alaska Native entities, and Native Hawaiian organizations. Some of the impacts so far are in the education and workforce development and healthcare access through telehealth.[13] == Measuring digital inclusion == The Australian Digital Inclusion Index (ADII) is a research project which has been tracking digital inclusion throughout Australia since 2016. It uses survey data to measure digital inclusion across three dimensions of access, affordability and digital ability. == The Future of Digital Inclusion == On February 16, 2021, a global dialogue within the United Nations (UN) took a look at the future of digital inclusion. Through the adoption of the 2030 UN Agenda for Sustainable Development, Member States made a commitment. They pledged to "leave no one behind." By 2030, the UN's goal is to close the digital divide by providing access to the Internet and mobile technologies for all nations and peoples and for all segments of society. The UN sees the crisis of too many people in our global society still living unconnected and how the digital divide remains a challenge that must be addressed. == Gaming == The Xbox Adaptive Controller is a groundbreaking example of digital inclusion, designed to make gaming more accessible to people with limited mobility. Developed by Microsoft, it features large programmable buttons and ports that connect to a wide range of external devices like switches, joysticks, and mounts, allowing users to customize their gaming experience based on their unique needs. By removing traditional physical barriers to gameplay, the Xbox Adaptive Controller empowers more people to participate in digital entertainment, promotes equal access to technology, and fosters a more inclusive gaming community. == Digital inclusion advocacy groups == Australian Digital Inclusion Alliance National Digital Inclusion Alliance (US)

Awwwards

Awwwards (Awwwards Online SL) is an organization that hosts web design competitions and conferences across Europe and the United States. Website owners and developers can participate by submitting their websites for review. Submissions are assessed by a jury, and top entries are presented and awarded prizes on a rotational basis. == Nomination process == Web designers submit their websites through Awwwards' platform for consideration for the Site of the Day. A jury, composed of industry professionals, and the Awwwards community evaluate the entries. The best daily sites are published annually in "The 365 Best Websites Around the World" book. == Jury == The jury consists of international designers, developers, and agencies who assess the creativity, technical skills, and insight of the submitted web projects. The panel's expertise ensures a comprehensive review process. === Developer Award === Awwwards, in partnership with Microsoft, created the Developer Award to recognize web developers who demonstrate excellence in creating websites that meet modern standards. The award highlights websites that work seamlessly across various platforms and devices, using best practices in HTML5, JavaScript, and CSS. == Annual winners == Some prominent Site of the Year winners include Mercedes-Benz, Bloomberg L.P., Bose Corporation, Warner Brothers, Volkswagen, Uber, and Google. == Awwwards conference == Awwwards also organizes two-day conferences featuring speakers from major tech companies and industry leaders such as Microsoft, Google, Spotify, Adobe, Opera, and Smashing Magazine. These events focus on the latest trends in web design and development. Speakers at Awwwards conferences have included notable figures in the design and technology industry such as Stefan Sagmeister, Paula Scher, and design leaders from companies including Wix. == Corporate affairs == === Platform === Awwwards operates an online platform where web designers and developers submit websites for evaluation and awards. Submitted projects are reviewed by a jury based on design, usability, creativity, and content. The platform also serves as a community hub for discovering digital trends, showcasing work, and accessing educational resources including talks and interviews. Design professionals from international companies have participated in Awwwards events and platform content. For example, Wix, a cloud-based web development company known for its website builder tools, has featured prominently in Awwwards conferences, with its design leadership contributing to discussions on design trends and creative thinking.

Proximedia Group

Proximedia Group is a Belgian media group. == History == Proximedia Belgium was founded in 1998, by Fabrice Wuyts and Eric Glachant. The company specializes in providing websites for SMEs. The Proximedia Group SA was founded in 1999 and became the coordinating organization of Proximedia Belgium, Online, Bizbook Channel, Globule Bleu bvba, Click+, Proximedia France, Proximedia Nederland, and Proximedia Spain. The Proximedia Group has been listed at the Free Market of Euronext Brussels since 2005. In 2007, the Proximedia Group founded the Bizbook Channel. This branch specialized in creating corporate videos. In 2008, Proximedia SA took over the web agency Globule Bleu. The following year, Proximedia launched the brand BeUP. They were also elected ‘Enterprise of The Year 2009’ by Ernst & Young. Proximedia launched two new services in 2011: Videobiz and Promobook. In 2012, the Bizbook Channel was launched. Proximedia was acquired by Publicis Groupe S.A. in July 2014. == Branches == Proximedia Belgium: the oldest branch of the Proximedia Group. It makes websites and provides support for their customers. Similar branches are Proximedia France and Proximedia Nederland. Batibouw +: specialized in bringing contractors and clients together. Bizbook Channel: specialized in creating corporate videos for SMEs. Click+: offers the management of Google AdWords campaigns. This contains advertising in Google's search results. Globule Bleu: specialized in digital campaigns for larger companies or organisations. Online: an Internet Service Provider (ISP) that provides internet access, domain names, hosting of websites and data centers, email service, etc. Bizbook: an online guestbook where users can post reviews on products and services of a company. Promobook: an online service which can be used to print promotions and coupons. == Key figures == == Sale tactics and lawsuits == There are a lot of websites, forums and blogs that warn for Proximedia. This is because of the long duration of the contract, the inability to terminate the contract and the alleged aggressive approach of Proximedia and the alleged low quality of service that Proximedia offers. Also, there are a lot of lawsuits every month, some of which are customers that wish to terminate the contract, others that allege Proximedia of misguiding. List of some example lawsuits: Mitigation of contractual termination compensation on the basis of article 6:248 paragraph 2 of the Dutch Civil Code A clause on the basis of which a termination fee is claimed can be considered a penalty clause. Mitigation of the penalty based on article 6:94 of the Dutch Civil Code? Performance claim rejected; successful appeal to breach of contract; dissolution; restitution claim awarded. Agreement for IT services. Contents of the agreement. No reflex effect of the Door-to-Door Sales Act for small entrepreneurs. Implementation Act of the Consumer Rights Directive. Breach of contract? Unreasonably onerous clause? Cassation: ECLI:NL:HR:2016:996, (Partial) annulment with referral. Final judgment: ECLI:NL:GHSHE:2014:4228 Error. Reflex effect of the unfair commercial practices law? Compelling evidentiary force of written agreement. (No summary provided by court) Proximedia case. No valid defense against the claim concerning a number of monthly invoices. Article 7.1 of the agreement (containing a termination fee) is a general term in the sense of article 6:231 introductory text and under a of the Dutch Civil Code. No "reflex effect" of article 6:237 introductory text and under i of the Dutch Civil Code. Insufficiently argued why article 7.1 would be unreasonably onerous in the sense of article 6:233 of the Dutch Civil Code and that granting the claim would be unacceptable according to standards of reasonableness and fairness. Termination fee is not a penalty in the sense of article 6:91 of the Dutch Civil Code. A retailer (sole proprietorship) is approached by a representative of a company and enters into an "agreement for IT services" with a term of four years, which includes a dissolution fee of 60% of the not yet due monthly payments. The retailer is instructed to prove that, at the time of entering the agreement, the company promised him that he could terminate the agreement without any further obligations if he terminated his business. The retailer is considered to have succeeded in the burden of proof, and the company's claim for payment of the dissolution fee is rejected.

.ai

.ai is the Internet country code top-level domain (ccTLD) for Anguilla, a British Overseas Territory in the Caribbean. It is administered by the government of Anguilla. It is a popular domain hack with companies and projects related to the artificial intelligence industry (AI). Google's ad targeting treats .ai as a generic top-level domain (gTLD) because "users and website owners frequently see [the domain] as being more generic than country-targeted." In 2021, Google Search analyst Gary Illyes announced that ".ai" had been added to Google’s list of generic country-code top-level domains, meaning that Google would no longer infer Anguilla-specific targeting from the ccTLD. Identity Digital began managing the domain as of January 2025. == Second and third level registrations == Registrations within off.ai, com.ai, net.ai, and org.ai are available worldwide without restriction. From 15 September 2009, second level registrations within .ai are available to everyone worldwide. == Registration == The minimum registration term allowed for .ai domains is 2 through 10 years for registration and renewal, and a 2-year renewal for domain transfer. Identity Digital is the authority in charge of managing this extension. Registrations began on 16 February 1995. The limits on the number of characters used for the domain name are, at a minimum, from 1 to 3, depending on the registrar, and always at most 63 characters. The character set supported for .ai domain names includes A–Z, a–z, 0–9, and hyphen. As of November 2022, .ai domains cannot accommodate IDN characters. There are no requirements for registering a domain, including local and foreign residents. A .ai domain can be suspended or revoked, if the domain is involved in illegal activity such as violating trademarks or copyrights. Usage must not violate the laws of Anguilla. Anguilla uses the UDRP. Filing a UDRP challenge requires using one of the ICANN Approved Dispute Resolution Service Providers. If the domain is with an ICANN accredited registrar, they should work with the arbitrator. Usually this means either doing nothing or transferring a domain. .ai domains are transferable to any desired registrars as the registration of domain is done maintaining EPP. There used to be a whois.ai-based platform of expired domains in which those could be procured and auctioned every ten days through a standard online process. The last auctions of such kind closed there in December 2024; the platform had been scheduled for shutdown on 30 June 2025, but remained online in the months following that date. == Valuation == Domains cost depends on the registrar, with yearly fees ranging from US$140 (the base fee, as established by Anguilla) to $200. As of July 2025, the highest-valued .ai domain is an undisclosed one sold on 8 November 2023, on Escrow.com, for US$1,500,000—months after an initial $300,000 sale to the same buyer. Among the publicly disclosed ones, the most valued, fin.ai, was sold for $1,000,000 in March 2025. On 16 December 2017, the .ai registry started supporting the Extensible Provisioning Protocol (EPP) and migrated all of its domains onto an EPP system. Consequently, many registrars are allowed to sell .ai domains. Since that date, the .ai ccTLD has also been popular with artificial intelligence companies and organisations. Though such trends are primarily seen among new AI based companies or startups, many established AI and Tech companies preferred not to opt for .ai domains. For example, DeepMind has its domain retained at .com; Meta has redirected its facebook.ai domain to ai.meta.com. == Impact on Anguilla's economy == The registration fees earned from the .ai domains go to the treasury of the Government of Anguilla. As per a 2018 New York Times report, the total revenue generated out of selling .ai domains was $2.9 million. In 2023, Anguilla's government made about US$32 million from fees collected for registering .ai domains; that amounted to over 10% of gross domestic product for the territory. "In the years before the real breakthrough of AI, revenue from .ai domains made up less than 1% of our state income, by 2025 it will be around 47%," explained Jose Vanterpool, Minister of Infrastructure and Communications (MICUHITES), in an interview with BBC. The high 90% renewal rate of .ai domains and the 2025 renewal wave of domains registered in 2023 are driving another surge in state revenues, according to Domaintechnik.

IAmAnas

#IAmAnas (I Am Anas) is a Twitter hashtag and social media campaign that started in 2015. Users tweeted to express support for the undercover investigative works of Ghanaian journalist Anas Aremeyaw Anas. The campaign restarted in 2018 when the Ghanaian MP and financier of the New Patriotic Party, Kennedy Agyapong, announced his intention to reveal the identity of Anas following the journalist's exposé of corruption at the Ghana Football Association. Anas maintains that "being anonymous has always been his secret weapon." Pictures purported to be of Anas were first released by a TV station owned by Agyapong, and were quickly picked up by other media houses. At least one person, a Dutch-Brazilian model, has claimed ownership of one picture that was released, and has threatened legal action against Agyapong for possibly putting his life in danger. In response to Agyapong, social media users retweeted photos of themselves, random people, or even comic images of entities that resemble the trademark covered face of Anas. When the hashtag first began in 2015, along with other popular uses of the journalist's name, Elizabeth Ohene wrote an article about Ghanaians use of humour in response to dealing with the expose of government corruption. "I do not know when these words will make it into Wikipedia or the Oxford English Dictionary but for the moment you can take it from me that: To go undercover is to anas, to make secret recordings is to anas-anas, to wear disguises is to do an anas, to be caught in the act is to be anased. To have someone exposed taking bribes is to have that person being given the full Anas Aremeyaw Anas."