Template:Table of atomic and nuclear constants: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Bjankuloski06en
mk
 
en>Addbot
m Bot: Migrating 1 interwiki links, now provided by Wikidata on d:q10990101
Line 1: Line 1:
Whether you're looking to change web hosts or you're starting a site for the first time, you need to find the right host for your requirements. To find out what you need to look for -- and what to look out for -- take a look at these tips that will help you find a great web hosting provider.<br><br>Read about your prospective host to see what sort of websites they deal with. Free sites often prohibit scripts that generate dynamic content. This will limit the scope of your site, so you may want to upgrade to a paying host.<br><br>When choosing your web hosting service, do not rely on someone's recommendation, or only on the info you've read online. Most services have affiliate programs and the people recommending the service may not have any direct experience with it. You should take more than recommendations into consideration when choosing your web host.<br><br>Don't purchase a web hosting plan just because it offers unlimited disk space or bandwidth. Compare these plans with plans that offer a reasonable amount of space and bandwidth to determine which is the best plan for your needs. Sometimes plans that offer a finite amount of space or bandwidth are better for your particular needs than plans that offer unlimited quantities of space or bandwidth.<br><br>Write down a list of your own priorities before you start shopping for a hosting service. Figure out everything you must have, would like to have, and can life without and then choose the host which provides the most important items. Creating a detailed list also prevents you from rushing into a decision based upon only one feature.<br><br>If you want a web host you can trust, look at the kind of guarantee they offer. Some services offer to refund your money if you decide you are not satisfied. This means these services are very confident about being able to host your website and keep it online constantly.<br><br>Make sure that you understand the difference between managed and un-managed web hosting. Those that are managed can be invaluable to you if you are not an expert yourself on the intricacies of maintaining a website. You will want to choose a managed one who has excellent availability of technical support teams.<br><br>You should know that not all web hosting services support Flash plug in. Using Flash on your site allows you to create a more interactive experience for your visitors, for instance with videos, games and new design possibilities. If you are not planning on using Flash, this is not تصميم مواقع ([http://www.egchost.com Click On this site]) a feature you should worry about.<br><br>If you're going to use a web hosting company, make sure it's not in danger of going out of business. Find out how long the company has been in business, and whether they have been profitable. If the company goes out of business, you could also lose access to all of the data that was stored on their servers in addition to having your website go offline.<br><br>Before you decide on a web host, examine your needs carefully. Subscription rates and features vary widely among web hosts. For instance, if you do not need e-commerce, there is no point in paying extra for a hosting plan that includes that feature. You need to know what type of content you will publish on your site in order to find the right web host that offers the features that you need.<br><br>Before choosing your web hosting service, determine whether or not you will need to use web templates. Many hosts will provide easy to use templates for building your site without the need for HTML knowledge or a professional designer. If you need this service, then choose a host that give a wide range of templates.<br><br>You should try to choose a web host that has his or her own personal blog. Hosts that have a blog demonstrate that they have a true passion for hosting and that they enjoy connecting with readers. In addition, this proves that they possess wisdom in web hosting and building. A blog also lets you see for yourself how popular the host is by viewing the number of responses on every post. You should be leery of hosts that don't have a blog.<br><br>Finding a solid web hosting provider is of paramount importance for anyone with a website. Don't disappoint your visitors with the downtime that comes from having an unreliable host. These great ideas will help you sort through the wide variety of web hosts and make a decision that you will be happy with.
{{underlinked|date=October 2012}}
 
'''Randomized Hough transform''' is a probabilistic variant to the classical [[Hough transform]], which is a commonly used technique for detecting curves (straight line, circle, ellipse, etc.)<ref>D.H. Ballard, "Generalizing the Hough Transform to Detect Arbitrary Shapes", Pattern Recognition, Vol.13, No.2, p.111-122, 1981</ref> The basic idea of Hough transform (HT) is to implement a voting procedure for all potential curves in the image, and at the termination of the algorithm curves that do exist in the image will have relatively high voting scores. Randomized Hough transform (RHT) is different from HT in that it tries to avoid conducting the computationally expensive voting process for every nonzero pixel in the image by taking advantage of the geometric properties of analytical curves, and thus improve the time efficiency and reduce the storage requirement of the original algorithm.  
 
==Motivation==
 
Although Hough transform (HT) has been widely used in [[Edge detection|curve detection]], it has two major drawbacks:<ref>L. Xu, E. Oja, and P. Kultanan, "A new curve detection method: Randomized Hough transform (RHT)", ''Pattern Recog. Lett.'' 11, 1990, 331-338.</ref> First, for each nonzero pixel in the image, the parameters for the existing curve and redundant ones are both accumulated during the voting procedure. Second, the accumulator array (or Hough space) is predefined in a heuristic way. The more accuracy needed, the higher parameter resolution should be defined. These two needs usually result in a large storage requirement and low speed for real applications. Therefore, RHT was brought up to tackle this problem.
 
==Implementation==
 
In comparison with HT, RHT takes advantage of the fact that some [[analytical]] curves can be fully determined by a certain number of points on the curve. For example, a straight line can be determined by two points, and an [[ellipse]] (or a circle) can be determined by three points. The case of ellipse detection can be used to illustrate the basic idea of RHT. The whole process generally consists of three steps:
# Fit ellipses with randomly selected points.
# Update the accumulator array and corresponding scores.
# Output the ellipses with scores higher than some predefined threshold.
===Ellipse fitting===
 
One general equation for defining [[ellipse]]s is:
<math>a (x - p)^2+ 2b (x-p) (y-q) +  c (y-q)^2 + 1 = 0 </math>
 
with restriction: <math>ac-b^2>0</math>
 
However, an ellipse can be fully determined if one knows three points on it and the tangents in these points.
 
RHT starts by randomly selecting three points on the ellipse. Let them be X<sub>1</sub>, X<sub>2</sub> and X<sub>3</sub>. The first step is to find the tangents of these three points. They can be found by fitting a straight line using [[least squares]] technique for a small window of neighboring pixels.  
 
The next step is to find the intersection points of the tangent lines. This can be easily done by solving the line equations found in the previous step. Then let the intersection points be T<sub>12</sub> and T<sub>23</sub>, the midpoints of line segments <math>X_1X_2</math> and <math>X_2X_3</math> be M<sub>12</sub> and M<sub>23</sub>. Then the center of the ellipse will lie in the intersection of <math>T_{12}M_{12}</math> and <math>T_{23}M_{23}</math>. Again, the coordinates of the intersected point can be determined by solving line equations and the detailed process is skipped here for conciseness.   
 
Let the coordinates of ellipse center found in previous step be (x<sub>0</sub>, y<sub>0</sub>). Then the center can be translated to the origin with <math>x' = x-x_0</math> and <math>y' = y-y_0</math> so that the ellipse equation can be simplified to:
 
<math>ax'^2+2bx'y'+cy'^2=1</math>
 
Now we can solve for the rest of ellipse parameters: a, b and c by substituting the coordinates of X<sub>1</sub>, X<sub>2</sub> and X<sub>3</sub> into the equation above.
 
===Accumulating===
 
With the ellipse parameters determined from previous stage, the [[accumulator]] array can be updated correspondingly. Different from classical Hough transform, RHT does not keep "grid of buckets" as the accumulator array. Rather, it first calculates the similarities between the newly detected ellipse and the ones already stored in accumulator array. Different metrics can be used to calculate the similarity. As long as the similarity exceeds some predefined threshold, replace the one in the accumulator with the average of both ellipses and add 1 to its score. Otherwise, initialize this ellipse to an empty position in the accumulator and assign a score of 1.
 
===Termination===
 
Once the score of one candidate ellipse exceeds the threshold, it is determined as existing in the image (in other words, this ellipse is detected), and should be removed from the image and accumulator array so that the algorithm can detect other potential ellipses faster. The algorithm terminates when the number of iterations reaches a maximum limit or all the ellipses have been detected.
 
Pseudo code for RHT:<ref>S. Inverso, “Ellipse Detection Using Randomized Hough Transform”, www.saminverso.com/res/vision/EllipseDetectionOld.pdf, May 20, 2002</ref>
 
<source lang="cpp">
while (we find ellipses OR not reached the maximum epoch) {
    for(a fixed number of iterations) {
        Find a potential ellipse.
        if(the ellipse is similar to an ellipse in the accumulator)
            Replace the one in the accumulator with the average of two ellipses and add 1 to the score;
        else
            Insert the ellipse into an empty position in the accumulator with a score of 1;
    }
    Select the ellipse with the best score and save it in a best ellipse table;
    Elliminate the pixels of the best ellipse from the image;
    Empty the accumulator;
}
 
</source>
 
==References==
<references/>
 
[[Category:Image processing]]
[[Category:Computer vision]]

Revision as of 04:55, 15 April 2013

Template:Underlinked

Randomized Hough transform is a probabilistic variant to the classical Hough transform, which is a commonly used technique for detecting curves (straight line, circle, ellipse, etc.)[1] The basic idea of Hough transform (HT) is to implement a voting procedure for all potential curves in the image, and at the termination of the algorithm curves that do exist in the image will have relatively high voting scores. Randomized Hough transform (RHT) is different from HT in that it tries to avoid conducting the computationally expensive voting process for every nonzero pixel in the image by taking advantage of the geometric properties of analytical curves, and thus improve the time efficiency and reduce the storage requirement of the original algorithm.

Motivation

Although Hough transform (HT) has been widely used in curve detection, it has two major drawbacks:[2] First, for each nonzero pixel in the image, the parameters for the existing curve and redundant ones are both accumulated during the voting procedure. Second, the accumulator array (or Hough space) is predefined in a heuristic way. The more accuracy needed, the higher parameter resolution should be defined. These two needs usually result in a large storage requirement and low speed for real applications. Therefore, RHT was brought up to tackle this problem.

Implementation

In comparison with HT, RHT takes advantage of the fact that some analytical curves can be fully determined by a certain number of points on the curve. For example, a straight line can be determined by two points, and an ellipse (or a circle) can be determined by three points. The case of ellipse detection can be used to illustrate the basic idea of RHT. The whole process generally consists of three steps:

  1. Fit ellipses with randomly selected points.
  2. Update the accumulator array and corresponding scores.
  3. Output the ellipses with scores higher than some predefined threshold.

Ellipse fitting

One general equation for defining ellipses is: a(xp)2+2b(xp)(yq)+c(yq)2+1=0

with restriction: acb2>0

However, an ellipse can be fully determined if one knows three points on it and the tangents in these points.

RHT starts by randomly selecting three points on the ellipse. Let them be X1, X2 and X3. The first step is to find the tangents of these three points. They can be found by fitting a straight line using least squares technique for a small window of neighboring pixels.

The next step is to find the intersection points of the tangent lines. This can be easily done by solving the line equations found in the previous step. Then let the intersection points be T12 and T23, the midpoints of line segments X1X2 and X2X3 be M12 and M23. Then the center of the ellipse will lie in the intersection of T12M12 and T23M23. Again, the coordinates of the intersected point can be determined by solving line equations and the detailed process is skipped here for conciseness.

Let the coordinates of ellipse center found in previous step be (x0, y0). Then the center can be translated to the origin with x=xx0 and y=yy0 so that the ellipse equation can be simplified to:

ax'2+2bxy+cy'2=1

Now we can solve for the rest of ellipse parameters: a, b and c by substituting the coordinates of X1, X2 and X3 into the equation above.

Accumulating

With the ellipse parameters determined from previous stage, the accumulator array can be updated correspondingly. Different from classical Hough transform, RHT does not keep "grid of buckets" as the accumulator array. Rather, it first calculates the similarities between the newly detected ellipse and the ones already stored in accumulator array. Different metrics can be used to calculate the similarity. As long as the similarity exceeds some predefined threshold, replace the one in the accumulator with the average of both ellipses and add 1 to its score. Otherwise, initialize this ellipse to an empty position in the accumulator and assign a score of 1.

Termination

Once the score of one candidate ellipse exceeds the threshold, it is determined as existing in the image (in other words, this ellipse is detected), and should be removed from the image and accumulator array so that the algorithm can detect other potential ellipses faster. The algorithm terminates when the number of iterations reaches a maximum limit or all the ellipses have been detected.

Pseudo code for RHT:[3]

while (we find ellipses OR not reached the maximum epoch) {
    for(a fixed number of iterations) {
        Find a potential ellipse.
        if(the ellipse is similar to an ellipse in the accumulator)
            Replace the one in the accumulator with the average of two ellipses and add 1 to the score;
        else
            Insert the ellipse into an empty position in the accumulator with a score of 1;
    }
    Select the ellipse with the best score and save it in a best ellipse table;
    Elliminate the pixels of the best ellipse from the image;
    Empty the accumulator;
}

References

  1. D.H. Ballard, "Generalizing the Hough Transform to Detect Arbitrary Shapes", Pattern Recognition, Vol.13, No.2, p.111-122, 1981
  2. L. Xu, E. Oja, and P. Kultanan, "A new curve detection method: Randomized Hough transform (RHT)", Pattern Recog. Lett. 11, 1990, 331-338.
  3. S. Inverso, “Ellipse Detection Using Randomized Hough Transform”, www.saminverso.com/res/vision/EllipseDetectionOld.pdf, May 20, 2002