-->

Welcome to our Coding with python Page!!! hier you find various code with PHP, Python, AI, Cyber, etc ... Electricity, Energy, Nuclear Power

Showing posts with label Artificial Intelligence. Show all posts
Showing posts with label Artificial Intelligence. Show all posts

Monday, 1 May 2023

The history of the Artificial Intelligence

Introduction:

Artificial Intelligence (AI) is an interdisciplinary field that involves the development of intelligent agents that can perform tasks that typically require human intelligence. The history of AI dates back to ancient times, where people tried to create intelligent machines. In this report, we will take a journey through the history of AI, highlighting the significant breakthroughs and milestones in the development of AI.

The history of the Artificial Intelligence


The Beginnings of AI:

The origins of AI can be traced back to ancient times, where Greek myths talked about mechanical men that could think and act like humans. The first recorded example of a machine that could reason was created by the mathematician and philosopher Ramon Lull in the 13th century. Lull's machine used a series of rotating discs with symbols to generate combinations of concepts, which could be used to answer questions or solve problems.

The Modern Era:

The modern era of AI began in the mid-20th century, with the development of electronic computers. In 1943, Warren McCulloch and Walter Pitts introduced the first model of an artificial neural network, which was inspired by the workings of the human brain. In 1950, Alan Turing proposed the "Turing Test," which evaluates a machine's ability to exhibit intelligent behavior that is indistinguishable from that of a human.

In the late 1950s and early 1960s, researchers began to develop systems that could reason and learn from experience. One of the earliest examples of this was the General Problem Solver (GPS), developed by Herbert Simon and Allen Newell. GPS could solve a wide range of problems by representing them as a set of rules.

The AI Winter:

Despite these early breakthroughs, progress in AI was slow, and by the 1970s, many researchers had become disillusioned with the field. This period is known as the "AI Winter," as funding for AI research dried up, and many researchers left the field. However, a small group of researchers continued to work on AI, and in the 1980s, progress began to accelerate.

Expert Systems:

One of the breakthroughs of the 1980s was the development of expert systems, which are computer programs that can mimic the decision-making abilities of a human expert in a particular domain. Expert systems were used in a variety of applications, such as medical diagnosis, financial analysis, and engineering design.

Machine Learning:

Another breakthrough of the 1980s was the development of machine learning algorithms, which enabled computers to learn from data. The most famous of these algorithms is the backpropagation algorithm, which is used to train artificial neural networks. With machine learning, computers could begin to perform tasks that were previously thought to be too complex for machines.

The Rise of Big Data and Deep Learning:

The 21st century has seen explosive growth in the amount of data available, which has led to the development of new AI techniques, such as deep learning. Deep learning is a type of machine learning that uses neural networks with many layers to extract features from data. Deep learning has been used in a variety of applications, such as speech recognition, image recognition, and natural language processing.

Conclusion:

In conclusion, the history of AI has been characterized by breakthroughs and setbacks, but progress has been steady. The field of AI has come a long way since its beginnings in ancient Greece, and the development of electronic computers has led to significant breakthroughs in the mid-20th century. Despite the setbacks of the AI Winter, the field has continued to advance, and recent breakthroughs in deep learning have the potential to revolutionize many fields.

Sunday, 30 April 2023

Machine Learning for Earth Observation and Prediction (ML4EOP)

✅   Improved forecasting of renewable energy production (such as solar) with physics-informed neural networks
✅  Live detection and prediction of extreme events (such as floods) with state-of-the-art iterative AI pipelines fusing EO data and modelling capabilities
✅  Use of generative AI techniques together with multivariate EO data sets (e.g. Climate Change Initiative) to develop and visualise the new generation of fused EO products supporting climate adaptation

  • Renewable energy forecasting
  • Physics-informed neural networks
  • Earth observation data
  • Extreme weather events
  • Flood prediction
  • Real-time detection
  • Generative AI techniques
  • Multivariate EO data sets
  • Climate adaptation
  • Land cover changes
  • Synthetic images
  • Machine learning
  • Artificial intelligence

Introduction The advent of machine learning and artificial intelligence has enabled us to process and analyze large datasets in a faster and more efficient manner. In this report, we will be discussing three specific applications of AI that have shown promising results in the field of renewable energy forecasting and climate adaptation.

Improved Forecasting of Renewable Energy Production with Physics-Informed Neural Networks

Renewable energy production, such as solar energy, can be highly variable and dependent on external factors such as weather conditions. Accurately forecasting solar energy production is important for managing grid stability and energy prices. One approach that has shown promise in this regard is the use of physics-informed neural networks (PINNs). PINNs are a type of deep learning model that incorporates physical equations into the neural network architecture to improve predictions.

A study by Khatami et al. (2021) demonstrated the effectiveness of PINNs in forecasting solar energy production. They developed a PINN model that integrated weather data, geographical location, and solar panel characteristics to predict solar energy output. The results showed that the PINN model outperformed traditional machine learning models and achieved a high level of accuracy in predicting solar energy production.

Live Detection and Prediction of Extreme Events with State-of-the-Art Iterative AI Pipelines Fusing EO Data and Modelling Capabilities Extreme weather events, such as floods, can cause significant damage to infrastructure and communities. Accurately predicting and detecting these events can help mitigate their effects. One approach that has shown promise is the use of state-of-the-art iterative AI pipelines that fuse Earth observation (EO) data and modeling capabilities.

A study by Li et al. (2020) demonstrated the effectiveness of this approach in predicting and detecting floods in real-time. The study used a combination of satellite imagery and hydrological modeling to create an iterative pipeline that continuously updated flood predictions based on new data. The results showed that the pipeline was able to accurately detect and predict flood events in real-time.

Use of Generative AI Techniques Together with Multivariate EO Data Sets to Develop and Visualize the New Generation of Fused EO Products Supporting Climate Adaptation Climate change is an increasingly pressing issue, and accurately predicting its effects is crucial for effective adaptation strategies. One approach that has shown promise in this regard is the use of generative AI techniques together with multivariate EO data sets to develop and visualize the new generation of fused EO products supporting climate adaptation.

A study by Liu et al. (2020) demonstrated the effectiveness of this approach in predicting future land cover changes in China. The study used a generative adversarial network (GAN) to generate synthetic images of land cover based on current and historical EO data. The results showed that the GAN model was able to accurately predict future land cover changes, and the synthetic images provided a useful visualization tool for policymakers.

Conclusion 

In conclusion, the use of AI and machine learning has shown great promise in improving our ability to forecast renewable energy production, predict and detect extreme weather events, and support climate adaptation. These applications have the potential to greatly benefit society by improving energy efficiency, reducing damage from extreme weather events, and informing policy decisions related to climate change. 

YOLO (You Only Look Once) a real-time object detection system

YOLO (You Only Look Once) is a state-of-the-art real-time object detection system. It is an object detection algorithm that uses deep convolutional neural networks (CNN) to detect objects in real-time. YOLO can process images and video frames at high speeds, making it ideal for applications that require fast and accurate object detection. YOLO was developed by Joseph Redmon and Ali Farhadi in 2016 and has been updated with newer versions since then.




Technical Report: YOLO uses a single neural network to predict bounding boxes and class probabilities for detected objects. The architecture of YOLO is divided into two parts: the convolutional part and the fully connected part. The convolutional part consists of a series of convolutional layers, followed by max-pooling layers, which reduce the spatial resolution of the input. The fully connected part consists of a series of fully connected layers, which output the final bounding box predictions and class probabilities.

YOLO works by dividing the input image into a grid of cells. Each cell predicts a fixed number of bounding boxes and class probabilities. The bounding boxes are represented by four values: the x and y coordinates of the center of the bounding box, the width of the bounding box, and the height of the bounding box. The class probabilities represent the probability of each object class being present in the bounding box. YOLO predicts the bounding boxes and class probabilities for each cell and then combines them to produce the final output.

YOLO has been used in various applications, including autonomous driving, surveillance, and robotics. One example of the use of YOLO is in pedestrian detection for autonomous driving. The YOLO algorithm can detect pedestrians in real-time and provide accurate and reliable information to the autonomous vehicle. This information can be used to adjust the vehicle's speed and trajectory to avoid collisions with pedestrians.

Another example of the use of YOLO is in the detection of defects in manufacturing. The YOLO algorithm can detect defects in real-time and provide information to the manufacturing process to correct the defects. This can improve the quality of the manufactured products and reduce waste.

In conclusion, YOLO is a state-of-the-art real-time object detection system that uses deep convolutional neural networks to detect objects. It is a fast and accurate algorithm that has been used in various applications, including autonomous driving, surveillance, and robotics. The use of YOLO can improve the accuracy and reliability of object detection in real-time applications.

The use of AI in GIS

Introduction: Artificial Intelligence (AI) is a rapidly growing field that has revolutionized many industries, including Geographic Information Systems (GIS). AI has been integrated with GIS to improve data analysis, accuracy, and speed of processing. This report discusses the use of AI in GIS and its applications.

Background: GIS is a powerful tool for analyzing geospatial data, which is widely used in various fields such as environmental management, urban planning, and natural resource management. GIS involves collecting, managing, analyzing, and displaying spatial data. However, traditional GIS methods have limitations in handling large and complex datasets, which can be time-consuming and prone to errors. This is where AI comes into play.

Use of AI in GIS: AI has revolutionized GIS by enabling the processing of large and complex datasets in real-time. AI techniques such as machine learning, deep learning, and neural networks have been applied in GIS to analyze geospatial data. AI algorithms can process data from multiple sources such as satellite imagery, LiDAR data, and drone data to produce accurate and reliable results.

One of the major applications of AI in GIS is image classification. Image classification is the process of identifying and categorizing objects or features in an image. AI algorithms such as convolutional neural networks (CNNs) have been used for image classification in GIS. CNNs can analyze large datasets and identify patterns in the data, making them ideal for classifying land use/cover, vegetation, and water bodies from satellite imagery.

Another application of AI in GIS is object detection. Object detection is the process of identifying and locating objects in an image or video. AI algorithms such as YOLO (You Only Look Once) and Faster R-CNN (Region-based Convolutional Neural Networks) have been used for object detection in GIS. These algorithms can detect and locate objects such as buildings, roads, and vehicles from satellite imagery and LiDAR data.

AI has also been used in GIS for predictive modeling. Predictive modeling involves using statistical and machine learning techniques to predict future events or behaviors. AI algorithms such as random forest, decision trees, and neural networks have been used for predictive modeling in GIS. These algorithms can predict future land use/cover changes, forest fires, and flooding events.

Conclusion: The integration of AI with GIS has improved the accuracy, speed, and reliability of geospatial data analysis. AI algorithms such as machine learning, deep learning, and neural networks have been used in GIS for image classification, object detection, and predictive modeling. The use of AI in GIS has numerous applications in fields such as environmental management, urban planning, and natural resource management. Further research and development in this area are needed to fully exploit the potential of AI in GIS.

Monday, 25 October 2021

APPLICATIONS OF AI IN YOUR HOUSEHOLD: TOP 10 USE OF AI AT HOME

All about Agile, Ansible, DevOps, Docker, EXIN, Git, ICT, Jenkins, Kubernetes, Puppet, Selenium, Python, etc

Read about the top 10 applications of AI in your household

You might think that artificial intelligence is only something the tech giants are focused on and that it doesn’t have any impact on your household or everyday life. But the reality is different. Whether you realize it or not, Artificial Intelligence is everywhere. The application of AI is not only for big sectors or finance or manufacturing, it is also impacting our daily lives. So, let’s find out about the applications of AI in your daily life.

 

Smart Assistants

Perhaps the most popular use of AI comes in the form of digital smart assistants, such as Siri, Alexa, and Google Assistant. These AI-powered personal assistants can take in your voice commands and translate them into actions, such as adding items to your shopping list or calling a friend. There’s no question that voice assistants will continue to grow and become even more capable of assisting us in our daily lives.

 

AI Cleaner

Even though the past nine examples of artificial intelligence are all some sort of service or software, that doesn’t mean that AI doesn’t come in the shape of physical machines as well. And you may have some in your own home. Robot’s Roomba vacuum cleaner uses AI to scan the size of the room it is in, identifies obstacles, and determines the most efficient route to sweep the space.

 

Smart Kitchen Appliance

Smart kitchen appliances and smart speakers are making their way into kitchens all around the world. You may even have one now. Whether it’s a coffee machine or an oven, these tools are evolving, learning your schedules and patterns so that they can provide you with warm food, coffee, etc.

 

Smart Fridge

Your new smart fridge may be able to track when food is low and place orders for you when food is low. Or, better yet, AI could be used to help you create the perfect meal with just the ingredients you have in the refrigerator. Utilizing AI technologies with gastronomical learning, companies like Plant Jammer and Chefling are helping people create delicious food with the ingredients they have on hand.

 

Enhanced Health and Fitness at Home

Being able to monitor patients at home with real-time data remotely, effectively, could be revolutionary. Going far beyond the Apple watch that you have on your wrist right now, healthcare professionals could tap into the predictive powers of AI to determine patients who are potentially at risk for disease or injury. This would give doctors a lot more power but could alleviate some of the pressure placed on the healthcare systems during flu season, saving lives.

 

Home Projects

We all know that home projects are not always the most exciting. Even more so, when something breaks in your home, you want to fix it as soon as possible. Just like a smart medical device, homes can run self-diagnostics predicting potential issues before they occur, contacting the appropriate repairman, who may be a robot.

 

Interconnected Home

5G technology and the IoT are just on the horizon. These technologies will help create a living technological ecosystem by real-time data and will be analyzed using artificial intelligence. Your home or apartment will be a part of this ecosystem interconnected in this complex web. The new smart towns and cities will use your data to improve the quality of life of people around the city in various areas like energy consumption, traffic, and even overcrowding.

 

Facial Recognition

Today almost everyone uses smartphones, right? Facial recognition is not something new. Every app like Snapchat, Facebook, LucidPix, etc uses artificial intelligence in its facial recognition technology.

LucidPix uses facial recognition to detect a user’s face for the “3D Face” feature, which allows users to capture and convert their selfies to 3D photos. Similarly, Snapchat uses Artificial Intelligence. to recognize users’ faces and apply face filters to users’ photos. In Facebook, facial recognition is used to identify faces in photos and invite users to tag themselves or their Facebook friends.

 

Media Recommendations

If you’ve ever finished watching a TV show on Netflix, you’ve probably noticed how Netflix immediately displays other shows you may enjoy watching next. YouTube is another platform that recommends a series of videos you might like next after you’ve finished watching one video. Both these digital media services analyze hundreds of records to suggest films, TV shows, and videos that you might like based on your previous reactions and choices of media.

 

Online Banking

Many banks now offer mobile check deposit services to their customers, which also utilize machine learning. Banking apps can recognize and read your handwriting to translate that to a digital check. So, now you can sit at your home and transfer money. This makes things so easy especially during the pandemic.




Thursday, 21 October 2021

What is Neural Network? How does it understand things?

 One of our great scientists, Stephen Hawking, said that “The development of full Artificial intelligence could spell the end of the human race”. Artificial Intelligence is a very hot topic actually nowadays. We always wonder what else it can do, how it is a very interesting, strange, and special topic for our generation. Neural Networks are one of the topics in AI, which gives us the same feeling.

Today in this article, we will explore the neural network in a simple way. How it can learn anything, examples, and their applications.

What is Neural Network?

The word neural is inspired by the word neuron and we all know what a neuron is (neurons that share data in our brain. It helps humans to process the information and generate output through the brain.

This neuron is interconnected to other millions of neurons.) The same happens here in Artificial Intelligence. This neural network has also interconnected Artificial Neurons called nodes. We also call it an Artificial Neural Network.

Well, neural networks are a key element of deep learning and artificial intelligence. If you are highly passionate about Deep Learning or Artificial Intelligence and are willing to try to build your own Basic Neural Network, then this book will be of great use to you.

The book “Make Your Own Neural Network” will help to make neural networks as accessible as possible to as many readers. You can click the link below to buy.

You’ll learn to code in Python and make your own neural network, teaching it to recognize human handwritten numbers, and performing as well as professionally developed networks.

AI applications and robots will be able to learn everything using this network and would generate better output. In other words, Artificial Intelligence can learn every single thing the same as human babies learn, using neural networks.

Basic Concept of Neural Network

Now, let’s understand another concept of a neural network, there are many applications available in our smartphone that use the concept of Artificial Intelligence such as image recognition, automatic language translator, and even more.

The technique that all of them use is Deep Learning. The neural network comes in the field of deep learning. It was first proposed by Warren McCullough and Walter Pitts in 1944.

Understand this example, Have you ever been to Japan if not then assume you are there and you saw any board there written in Japanese and you need to understand in your own language. What would you do then? You will simply open the Google lens and scan that text, and done. The Deep Learning Algorithms generate the output on the basis of the data that google lens has.

Neural Network

How does it understand things?

How does neural network understand things? Let us first understand this example.

let’s assume when you drop your 6 years old kid in school every day then he looks at the street and asks you, “Papa what is this?”

model 1364607 640

 

His father reply, “This is a red car.”

Again while returning from school he asks “Father what is this?”school bus 1535095 640

 

You again reply, “This is the yellow bus.”

Well, this situation continued several days. But one day you ask your son, “what is this?”yellow car 1119992 640 e1601973291449

 

Your son reply “This is a yellow car.”

Now you think, how did it happen? his father even never told him about the yellow car and he never saw it before. how did he recognize that it is a yellow car? Because he learned with the help of data which he found in the last few days.

Well, the same function work here in an artificial neural network. It also uses the data to generate output. Perceptron(an algorithm) in neural network learns using thousands of images that are given, so he could predict like color, pixels, shape, etc. It processes those inputs in layers that neural network has, to produce output.

Neural network has three-layer

  • Input Layer

The layer that accepts the information in the form of data.

  • Hidden Layer

This hidden layer performs calculations based on the information provided in the input layer and does find data to locate patterns like color, size, etc.

  • Output Layer

This layer generates the output based on the performance of the input layer and the hidden layer.

20201103 124911 0000 compressed1

Applications of Neural Network

The neural network has a lot of applications that companies, Industries, and even we are using. It is currently the most popular topic in the field of Artificial Intelligence. Here we will explore some interesting applications that we use in our daily life.

  • Speech Processing

Speech processing is also a part of an Artificial Neural Network. We all have used the Translator application. The speech processing technique is used there.

You just give a speech and the translator convert it into a text. Sometimes text to speech also. Language analysis and speech recognition is also a popular example of speech processing.

  • Image Processing

Image processing is a very interesting application of an artificial neural network. Nowadays every tech company are using it as security. Every smartphone has this application and that is facial recognition. This image processing technique is also used for face detection. It searches for a face in a given image as data.

  • Stock Market Prediction

The price fluctuation of the stock market is a very complicated thing. Our stock goes up and down in a day. But here an artificial neural network helps you to examine a lot of information quickly. The stock market prediction application is also being used to predict stock prices. It makes our effort easier.

Conclusion

Artificial intelligence has every technology that proves that it can become better than the mind of humans. We told that by using its data, it can learn new things and will never forget, but our mind forgets. These technologies make our work very easy.

There are lots of Interesting topics to learn in the field of Artificial Intelligence. Such examples around us are Self-Driving Cars, Computer Vision, AI Games, and even more.

That all! I hope you guys did understand. If you have any questions, please let me know in the comment section.

Wednesday, 20 October 2021

Unsupervised Joint Alignment of Complex Images

All about Agile, Ansible, DevOps, Docker, EXIN, Git, ICT, Jenkins, Kubernetes, Puppet, Selenium, Python, etc

Abstract 

Many recognition algorithms depend on careful positioning of an object into a canonical pose, so the position of features relative to a fixed coordinate system can be examined. Currently, this positioning is done either manually or by training a class-specialized learning algorithm with samples of the class that have been hand-labeled with parts or poses. In this paper, we describe a novel method to achieve this positioning using poorly aligned examples of a class with no additional labeling. 




Given a set of unaligned examplars of a class, such as faces, we automatically build an alignment mechanism, without any additional labeling of parts or poses in the data set. Using this alignment mechanism, new members of the class, such as faces resulting from a face detector, can be precisely aligned for the recognition process. Our alignment method improves performance on a face recognition task, both over unaligned images and over images aligned with a face alignment algorithm specifically developed for and trained on hand-labeled face images. We also demonstrate its use on an entirely different class of objects (cars), again without providing any information about parts or pose to the learning algorithm. 

1. Introduction 

The identification of certain objects classes, such as faces or cars, can be dramatically improved by first transforming a detected object into a canonical pose. Such registration reduces the variability that an identification system or classifier must contend with in the modeling process. Subsequent identification can condition on spatial position for a detailed analysis of the structure of the object in question. Thus, many recognition algorithms assume the prior rough alignment of objects to a canonical pose [1, 7, 15, 17]. In general, the better this alignment is, the better identification results will be. In fact, alignment itself has emerged as an important sub-problem in the face recognition literature [18], and a number of systems exist for the detailed alignment of specific categories of objects, such as faces [3, 4, 5, 6, 12, 19, 20]. We point out that it is frequently much easier to obtain images that are roughly aligned than those that are precisely aligned, indicating an important role for automatic alignment procedures. For example, images of people can be taken easily with a motion detector in an indoor environment, but will result in images that are not precisely aligned.
Although there exist many individual components to do both detection and recognition, we believe the absence of a complete end-to-end system capable of performing recognition from an arbitrary scene is in large part due to the difficulty in alignment, the middle stage of the recognition pipeline (Figure 1). Often, the middle stage is ignored, with the assumption that the detector will perform a rough alignment, leading to suboptimal recognition performance. A system that did attempt to address the middle stage would suffer from two signficant drawbacks of current alignment methods:
  • They are typically designed or trained for a single class of objects, such as faces. 
  • They require the manual labelling either of specific features of an object (like the middle of the eye or the corners of the mouth),1 or a description of the pose (such as orientation and position information).  
As a result, these methods require significant additional effort when applied to a new class of objects. Either they must be redesigned from scratch, or a new data set must be collected, identifying specific parts or poses of the new data set before an alignment system can be built. In contrast systems for the detection and recognition steps of the recognition pipeline only require simple, discrete labels, such as object versus non-object or pair match versus pair nonmatch, which are straight forward to obtain, making these systems significantly easier to set up than current systems for alignment, where even the form of the supervised input is very often class-dependent. Some previous work has used detectors capable of returning some information about object rotation, in addition to position and scale, such as, for faces, [8, 16]. Using the detected rotation angle, along with the scale and position of the detected region, one could place each detected object into a canonical pose. However, so far, these efforts have only provided very rough alignment due to the lack of precision in estimating the pose parameters. For example, in [8], the rotation is only estimated to within 30 degrees, so that one of 12 rotation-specific detectors can be used. Moreover, even in the case of frontal faces, position and scale are only roughly estimated, and, in fact, for face images, we use this as a starting point and show that a more precise alignment can be obtained. More concretely, in this work, we describe a system that, given a collection of images from a particular class, automatically generates an “alignment machine” for that object class. The alignment machine, which we call an image funnel, takes as input a poorly aligned example of the class and returns a well-aligned version of the example. The system is fully automatic in that it is not necessary to label parts of the objects or identify their initial poses, or even specify what constitutes an aligned image through an explicitly labeled canonical pose, although it is important that the objects be roughly aligned to begin with. For example, our system can take a set of images as output by the Viola-Jones face detector, and return an image funnel which dramatically improves the subsequent alignment of facial images. (We note that the term alignment has a special meaning in the face recognition community, where it is often used to refer to the localization of specific facial features. Here, because we are using images from a variety of different classes, we use the term alignment to refer to the rectification of a set of objects that places the objects into the same canonical pose. The purpose of our alignments is not to identify parts of objects, but rather to improve positioning for subsequent processing, such as an identification task.)

3. Methodology 

3.1. Congealing with SIFT descriptors 



We now describe how we have adapted the basic congealing algorithm to work on realistic sets of images. We consider a sequence of possible choices for the alphabet X on which to congeal. In particular, we discuss how each choice improves upon the previous choice, eventually leading to an appropriate feature choice for congealing on complex images. In applying congealing to complicated images such as faces from news photographs, a natural first attempt is to set the alphabet X over the possible color values at each pixel. However, the high variation present in color in the foreground object as well as the variation due to lighting will cause the distribution field to have high entropy even under a proper alignment, violating one of the necessary conditions for congealing to work. Rather than considering color, one could set X to be binary, corresponding to the absence or presence of an edge at that pixel. However, another necessary condition for congealing to work is that there must be a “basin of attraction” at each point in the parameter space toward a low entropy distribution. For example, consider two binary images a and b of the number 1, identical except for an x-translation. When searching over possible transformations to align b to a, unless the considered transformation is close enough to the exact displacement to cause b and a to overlap, the transformation will not cause any change in the entropy of the resulting distribution field. Another way of viewing the problem is that, when X is over edge values, there will be plateaus in the objective function that congealing is minimizing, corresponding to neighborhoods of transformationsthat do not cause changes in the amount of edge overlap between images, creating many local minima problems in the optimization. Therefore, rather than simply taking the edge values, instead, to generate a basin of attraction, one could integrate the edge values over a window for each pixel. To do this, we calculate the SIFT descriptor [13] over an 8x8 window for each pixel. This gives the desired property, since if a section of one pixel’s window shares similar structure with a section of another pixel’s window (need not be the corresponding section), then the SIFT descriptors will also be similar. In addition, using the SIFT descriptor gives additional robustness to lighting. Congealing directly with the SIFT descriptors has its own difficulties, as each SIFT descriptor is a 32 dimensional vector in our implementation, which is too large of a space to estimate entropy without an extremely large amount of data. Instead, we compute the SIFT descriptors for each pixel of each image in the set, and then cluster these using kmeans to produce a small set of clusters (in our experiments, we have been using 12 clusters), and let X be over the possible clusters. In other words, the distribution fields consist of distributions over the possible clusters at each pixel. After clustering, rather than assigning a cluster for each pixel, we instead do a soft assignment of cluster values for each pixel. Congealing with hard assignments of pixels to clusters would force each pixel to take one of a small number of cluster values, leading to local plateaus in the optimization landscape. For example, in the simpliest case, doing a hard assignment with two clusters would lead to the same local minima problems as discussed before with edge values. This problem of local minima was borne out by preliminary experiments we ran using hard cluster assignments, where we found that the congealing algorithm would terminate early without significantly altering the initial alignment of any of the images. To get around this problem, we model the pixel’s SIFT descriptors as being generated from a mixture of Gaussians model, with one Gaussian centered at each cluster center and σi’s for each cluster that maximize the likelihood of the labeling. Then, for each pixel, we have a multinomial distribution with size equal to the number of clusters, where the probability of an outcome i is equal to the probability that the pixel belongs to cluster i. So, instead of having an intensity value at each pixel, as in traditional congealing, we have a vector of probabilities at each pixel. The idea of treating each pixel as a mixture of clusters is motivated by the analogy to gray pixels in the binary image case. In the binary image case, a gray pixel is interpreted as being a mixture of underlying black and white “subpixels” [10]. In the same way, rather than doing a hard assignment of a pixel to one cluster, we treat each pixel as being a mixture of the underlying clusters.


Rank

seo