当前位置:文档之家› chapter15- segmentation

chapter15- segmentation

chapter15- segmentation
chapter15- segmentation

CHAPTER15

IMAGE SEGMENTATION

WHAT WILL WE LEARN?

?What is image segmentation and why is it relevant?

?What is image thresholding and how is it implemented in MATLAB?

?What are the most commonly used image segmentation techniques and how do they work?

15.1INTRODUCTION

Segmentation is one of the most crucial tasks in image processing and computer vision. As you may recall from our discussion in Chapter1(Section1.5),image segmentation is the operation that marks the transition between low-level image processing and image analysis:the input of a segmentation block in a machine vision system is a preprocessed image,whereas the output is a representation of the regions within that image.This representation can take the form of the boundaries among those regions (e.g.,when edge-based segmentation techniques are used)or information about which pixel belongs to which region(e.g.,in clustering-based segmentation).Once an image has been segmented,the resulting individual regions(or objects)can be described, represented,analyzed,and classi?ed with techniques such as the ones presented in Chapters18and19.

Practical Image and Video Processing Using MATLAB?.By Oge Marques.

?2011John Wiley&Sons,Inc.Published2011by John Wiley&Sons,Inc.

365

366IMAGE SEGMENTATION Segmentation is de?ned as the process of partitioning an image into a set of nonoverlapping regions whose union is the entire image.These regions should ideally correspond to objects and their meaningful parts,and background.Most image seg-mentation algorithms are based on one of two basic properties that can be extracted from pixel values—discontinuity and similarity—or a combination of them.

Segmentation of nontrivial images is a very hard problem—made even harder by nonuniform lighting,shadows,overlapping among objects,poor contrast between objects and background,and so on—that has been approached from many different angles,with limited success to this date.Many image segmentation techniques and algorithms have been proposed and implemented during the past40years and yet, except for relatively“easy”scenes,the problem of segmentation remains unsolved.

Figure15.1illustrates the problem.At the top,it shows the color and grayscale versions of a hard test image that will be used later in this chapter.Segmenting this image into its four main objects(Lego bricks)and the background is not a simple task for contemporary image segmentation algorithms,due to uneven lighting,projected shadows,and occlusion among objects.Attempting to do so without resorting to color information makes the problem virtually impossible to solve for the techniques described in this chapter.

FIGURE15.1Test images for segmentation algorithms:(a)a hard test image and(b)its grayscale equivalent;(c)an easier test image(courtesy of MathWorks)and(d)the result of morphological preprocessing and thresholding.

INTENSITY-BASED SEGMENTA TION367 The bottom part of Figure15.1shows another test image,which is considerably simpler and will probably lead to perfect segmentation with even the simplest tech-niques.Although the original image has a few imperfections(particularly on one coin that is signi?cantly darker than the others),simple preprocessing operations such as region?lling(Section13.6.2)using imfill will turn it into an image suit-able for global thresholding(Section15.2.1)and subsequent labeling of the individual regions.

There is no underlying theory of image segmentation,only ad hoc methods,whose performance is often evaluated indirectly,based on the performance of the larger sys-tem to which they belong.Even though they share the same goal,image segmentation techniques can vary widely according to the type of image(e.g.,binary,gray,color), choice of mathematical framework(e.g.,morphology,image statistics,graph theory), type of features(e.g.,intensity,color,texture,motion),and approach(e.g.,top-down, bottom-up,graph-based).1

There is no universally accepted taxonomy for classi?cation of image segmenta-tion algorithms either.In this chapter,we have organized the different segmentation methods into the following categories:

?Intensity-based methods(Section15.2),also known as noncontextual methods, work based on pixel distributions(i.e.,histograms).The best-known example of intensity-based segmentation technique is thresholding.

?Region-based methods(Section15.3),also known as contextual methods,rely on adjacency and connectivity criteria between a pixel and its neighbors.The best-known examples of region-based segmentation techniques are region growing and split and merge.

?Other methods,where we have grouped relevant segmentation techniques that do not belong to any of the two categories above.These include segmentation based on texture,edges,and motion,among others.2

15.2INTENSITY-BASED SEGMENTATION

Intensity-based methods are conceptually the simplest approach to segmenta-tion.They rely on pixel statistics—usually expressed in the form of a histogram (Chapter9)—to determine which pixels belong to foreground objects and which pix-els should be labeled as background.The simplest method within this category is image thresholding,which will be described in detail in the remaining part of this section.

1The?eld of image segmentation research is still very active.Most recently published algorithms are far too complex to be included in this text,and their computational requirements often push MATLAB to its limits.Refer to“Learn More About It”section at the end of the chapter for useful pointers.

2Segmentation of color images will be discussed in Chapter16.

368IMAGE SEGMENTATION

FIGURE 15.2The histogram for the image in Figure 15.1c:an example of histogram suitable for partitioning using a single threshold.

15.2.1Image Thresholding

The basic problem of thresholding is the conversion of an image with many gray levels into another image with fewer gray levels,usually only two.This conversion is usually performed by comparing each pixel intensity with a reference value (thresh-old ,hence the name)and replacing the pixel with a value that means “white”or “black”depending on the outcome of the comparison.Thresholding is a very popular image processing technique,due to its simplicity,intuitive properties,and ease of implementation.

Thresholding an image is a common preprocessing step in machine visual systems in which there are relatively few objects of interest whose shape (silhouette)is more important than surface properties (such as texture)and whose average brightness is relatively higher or lower than the other elements in the image.The test image in Figure 15.1c is an example of image suitable for image thresholding.Its histogram (Figure 15.2)has two distinct modes,the narrowest and most prominent one (on the left)corresponding to background pixels,the broadest one (on the right)re?ecting the intensity distribution of pixels corresponding to the coins.

Mathematically,the process of thresholding an input image f (x,y )and producing a binarized version of it,g (x,y ),can be described as

g (x,y )=

1if f (x,y )>T

0otherwise (15.1)

where T is the threshold.If the same value of T is adopted for the entire image,the process is called global thresholding .When the choice of value for T at a point of

INTENSITY-BASED SEGMENTA TION369 coordinates(x,y)depends on statistical properties of pixel values in a neighborhood around(x,y),it will be referred to as local or regional thresholding.3

In MATLAB

The IPT has a function to convert a grayscale image into a binary(black-and-white) image,im2bw,that takes an image and a threshold value as input parameters.You will learn how to use it in Tutorial15.1.

15.2.2Global Thresholding

When the intensity distribution of an image allows a clear differentiation between pixels of two distinct predominant average gray levels,the resulting histogram has a bimodal shape(such as the one in Figure15.2),which suggests that there may be a single value of T that can be used as a threshold for the entire image.For the case of a single image,the choice of the actual value of T can be done manually,in typical trial and error fashion,as follows:

1.Inspecting the image’s histogram(using imhist).

2.Select an appropriate value for T.

3.Apply the selected value(using im2bw)to the image.

4.Inspect the results:if they are acceptable,save resulting image.Otherwise,make

adjustments and repeat steps2–4.

For the cases where many images need to be segmented using global thresholding, a manual,labor-intensive approach such as described above is not appropriate.An au-tomated procedure for selecting T has to be employed.Gonzalez and Woods[GW08] proposed an iterative algorithm for this purpose,whose MATLAB implementation (based on[GWE04])follows:

Id=im2double(I);%I is a uint8grayscale image

T=0.5*(min(Id(:))+max(Id(:)));

deltaT=0.01;%convergence criterion

done=false;

while?done

g=Id>=T;

Tnext=0.5*(mean(Id(g))+mean(Id(?g)));

done=abs(T-Tnext)

T=Tnext;

end

3Techniques that rely on the spatial coordinates(x,y),often called dynamic or adaptive thresholding,have also been proposed in the literature.Since they cannot be considered purely“intensity-based,”they have been left out of this discussion.

370IMAGE SEGMENTATION

FIGURE15.3Image thresholding results for the image in Figure15.1c using iterative thresh-old selection algorithm(a)and manually selected threshold(b).

Figure15.3a shows the result of applying the threshold value to the image in Figure15.1c.In this case,the maximum and minimum gray values in Id are1and 0.0902,respectively,deltaT was chosen to be0.01,and it took the algorithm three iterations to arrive at the?nal result:T=0.4947.For the sake of comparison,the results obtained with a manually selected T=0.25are shown in Figure15.3b.

Optimal Thresholding Many optimal strategies for selecting threshold values have been suggested in the literature.These strategies usually rely on assumed statis-tical models and consist of modeling the thresholding problem as a statistical infer-ence problem.Unfortunately,such statistical models usually cannot take into account important factors such as borders and continuity,shadows,nonuniform re?ectance, and other perceptual aspects that would impact a human user making the same deci-sion.Consequently,for most of the cases,manual threshold selection by humans will produce better results than statistical approaches would[BD00].

The most popular approach under this category was proposed by Otsu4in 1979[Ots79]and implemented as an IPT function:graythresh.Applying that function to the image in Figure15.1c results in an optimal value for T=0.4941, which—in this particular case—is remarkably close to the one obtained with the (much simpler)iterative method described earlier(T=0.4947).However,as shown in Figure15.3,neither of these methods produce a better(from a visual interpretation standpoint)result than the manually chosen threshold.

15.2.3The Impact of Illumination and Noise on Thresholding Illumination and re?ectance patterns play a critical role in thresholding.Even an easy input image(such as the coins image),which could be successfully segmented using global thresholding,poses a much harder challenge if the illumination pattern changes

4A detailed description of the approach is beyond the scope of this text.See Section10.3.3of[GW08]or Section3.8.2of[SS01]for additional information.

INTENSITY-BASED SEGMENTA TION371

FIGURE15.4An example of uneven illumination pattern used to generate the image in Figure15.5a.

from constant(uniform)to gradual(Figure15.4).The resulting image(Figure15.5a) is signi?cantly darker overall and the corresponding histogram(Figure15.5b)shows an expected shift to the left.Consequently,using the same value of threshold(T=25) that produced very good results before(Figure15.3b)will lead to an unacceptable binarized image(Figure15.5c).

Noise can also have a signi?cant impact on thresholding,as illustrated in Figure15.5(d–f).In this case a Gaussian noise of mean zero and variance0.03has been applied to the image,resulting in the image in Figure15.5d,whose histogram, shown in Figure15.5e,has lost its original bimodal shape.The result of segmenting the image using T=0.25is shown in Figure15.5f.Although not as bad as one could expect,it would need postprocessing(noise reduction)to be truly useful.

In summary,in both cases,the images changed signi?cantly,their histograms lost their bimodal shape,and the originally chosen value for global threshold(T=0.25) was no longer adequate.In addition,no other value could be easily chosen just by inspecting the histogram and following the trial and error procedure suggested earlier in this chapter.

15.2.4Local Thresholding

Local(also called adaptive)thresholding uses block processing to threshold blocks of pixels,one at a time.The size of the block is usually speci?ed by the user,with the two extreme conditions being avoided:blocks that are too small may require an enormous amount of processing time to compute,whereas large blocks may produce results that are not substantially better than the ones obtained with global thresholding.

In MATLAB

The block processing technique is implemented using the blkproc function.You will learn how to use this function in the context of local thresholding in Tutorial15.1.

372IMAGE SEGMENTATION

FIGURE15.5Effect of illumination(left)and noise(right)on thresholding.See text for details.

EXAMPLE15.1

In this example,we divide the image in Figure15.5a into six vertical slices,treating each of them separately and using graythresh to choose a different value of thresh-old for each slice.The resulting image(Figure15.6b)is signi?cantly better than the one we would have obtained using a single value(T=0.3020,also calculated using

REGION-BASED SEGMENT A TION 373

FIGURE 15.6Local https://www.doczj.com/doc/d84884889.html,ing a single threshold for the entire image (a)and dividing it up into six slices and choosing a different threshold for each vertical slice (b).

graythresh )for the entire image (Figure 15.6a).The left portion of Figure 15.6b gives away some hints at where the slices were placed.

15.3REGION-BASED SEGMENTATION

Region-based segmentation methods are based on the fact that a pixel cannot be considered a part of an object or not based solely on its gray value (as intensity-based methods do).They incorporate measures of connectivity among pixels in order to decide whether these pixels belong to the same region (or object)or not.

Mathematically,region-based segmentation methods can be described as a sys-tematic way to partition an image I into n regions,R 1,R 2,···,R n ,such that the following properties hold [GW08]:

1.

n

i =1R i =I .2.

R i is a connected region,i =1,2,···,n .3.

R i ∩R j =?for all i and j ,i /=j .4.

P (R i )=TRUE for i =1,2,···,n .

5.P (R i ∪R j )=FALSE for any adjacent regions R i and R j .Here P (R i )is a logical predicate de?ned over the points in set R i and ?is the empty set.

The ?rst property states that the segmentation will be complete,that is,each pixel in the image will be labeled as belonging to one of the n regions.Property 2requires that all points within a region be 4-or 8-connected.Property 3states that the regions cannot overlap.Property 4states which criterion must be satis?ed so that a pixel is granted membership in a certain region,for example,all pixel values must be within a certain range of intensities.Finally,property 5ensures that two adjacent regions are different in the sense of predicate P .

374IMAGE SEGMENTATION These logical predicates are also called homogeneity criteria,H(R i).Some of the most common homogeneity criteria for grayscale images are as follows[Umb05]:

?Pure Uniformity:All pixel values in a region are the same.

?Local Mean Relative to Global Mean:The average intensity in a region is sig-ni?cantly greater(or smaller)than the average gray level in the whole image.

?Local Standard Deviation Relative to Global Mean:The standard deviation of the pixel intensities in a region is less than a small percentage of the average gray level in the whole image.

?Variance:At least a certain percentage of the pixels in a region are within two standard deviations of the local mean.

?Texture:All four quadrants within a region have comparable texture.

15.3.1Region Growing

The basic idea of region growing methods is to start from a pixel and grow a region around it,as long as the resulting region continues to satisfy a homogeneity criterion. It is,in that sense,a bottom-up approach to segmentation,which starts with individual pixels(also called seeds)and produces segmented regions at the end of the process.

The key factors in region growing are as follows:

?The Choice of Similarity Criteria:For monochrome images,regions are analyzed based on intensity levels(either the gray levels themselves or the measures that can easily be calculated from them,for example,moments and texture descriptors5)and connectivity properties.

?The Selection of Seed Points:These can be determined interactively(if the ap-plication allows)or based on a preliminary cluster analysis of the image,used to determine groups of pixels that share similar properties,from which a seed

(e.g.,corresponding to the centroid of each cluster)can be chosen.

?The De?nition of a Stopping Rule:A region should stop growing when there are no further pixels that satisfy the homogeneity and connectivity criteria to be included in that region.

It can be described in algorithmic form as follows[Eff00]:

Let f(x,y)be the input image

Define a set of regions R1,R2,...,Rn,each consisting of a single seed pixel

repeat

for i=1to n do

for each pixel p at the border of Ri do

for all neighbors of p do

5These will be discussed in Chapter18.

REGION-BASED SEGMENT A TION 375

FIGURE 15.7Region growing:(a)seed pixels;(b)?rst iteration;(c)?nal iteration.

Let (x,y)be the neighbor’s coordinates

Let Mi be the mean gray level of pixels in Ri

if the neighbor is unassigned and

|f(x,y)-Mi|<=Delta then

Add neighbor to Ri

Update Mi

end if

end for

end for

end for

until no more pixels can be assigned to regions

EXAMPLE 15.2

Figure 15.7shows an example of region growing on small test image,where the logical predicate for uniformity is given by P (R i )= TRUE if |f (x,y )?μi |≤ FALSE otherwise

(15.2)where μi is the average intensity of all pixels in R i except the reference pixel at (x,y )and is a user-selected threshold.In this example, =3.Figure 15.7shows the seed pixels (a),and the results of the ?rst (b)and last (c)iterations.

EXAMPLE 15.3

Figure 15.8shows the results of applying a region growing algorithm 6to the two test images originally introduced in Figure 15.1.Part (a)shows the hard input image with the seed points (speci?ed interactively by the user)overlaid.Part (b)shows the results of using region growing (pseudocolored for easier visualization):four regions plus background.A quick inspection shows that the results are virtually useless,primarily 6The region growing algorithm used in this example appears in [GWE04].

376IMAGE SEGMENTATION

FIGURE15.8Region growing results for two test images.See text for details.

due to poor contrast between the two darker and two brighter bricks and the in?uence of projected shadows.

For comparison purposes,we ran the same algorithm with an easy input image (Figure15.8c)in unsupervised mode,that is,without specifying any points to be used as seeds(or even the total number of regions that the algorithm should return). The results(Figure15.8d)are good,comparable to the ones obtained using global thresholding earlier in this chapter.

Limitations of Region Growing The basic region growing algorithm described in this section has several limitations,listed below[Eff00]:

?It is not very stable:signi?cantly different results are obtained when switching between4-connectivity and8-connectivity criteria.

?Segmentation results are very sensitive to choice of logical uniformity predicate.

?The number of seeds provided by the user may not be suf?cient to assign every pixel to a region.

?If two or more seeds that should belong to the same region are incorrectly provided to the algorithm,it will be forced to create distinct regions around them although only one region should exist.

WATERSHED SEGMENTA TION377

FIGURE15.9The quadtree data structure used in the split and merge segmentation algorithm

(a)and the corresponding regions in the image(b).

15.3.2Region Splitting and Merging

Region splitting is a top-down approach to image segmentation.It starts from the entire image and partitions it into smaller subimages until each resulting region is considered homogeneous by some criteria.At the end of the process,it is guaranteed that the resulting regions satisfy the homogeneity criterion.It is possible,however, that two or more adjacent regions are similar enough that should be combined into one.This is the goal of the merging step:to merge two or more adjacent regions into one if they satisfy a homogeneity criterion.

The data structure most commonly used for this algorithm is the quadtree,a special type of tree in which each node(except for the leaves)has four children.Each leaf node in the quadtree corresponds to a region in the segmented image(Figure15.9).

The split and merge segmentation algorithm can be described in algorithmic form as follows:

1.De?ne a logical uniformity predicate P(R i).

https://www.doczj.com/doc/d84884889.html,pute P(R i)for each region.

3.Split into four disjoint quadrants any region R i for which P(R i)=FALSE.

4.Repeat steps2and3until all resulting regions satisfy the uniformity criterion,

that is,P(R i)=TRUE.

5.Merge any adjacent regions R j and R k for which P(R j∪R k)=TRUE.

6.Repeat step5until no further merging is possible.

15.4WATERSHED SEGMENTATION

In this section,we describe a popular application of the morphological watershed transform in image segmentation.The watershed transform is a morphological tech-nique that derives its name from an expression in geography,where watershed is

378IMAGE SEGMENTATION de?ned as the ridge that divides areas drained by different river systems.A related term,catchment(or drainage)basin,is used to represent the geographical area that drains into a river or reservoir.

In morphological image processing,the watershed transform is used to represent regions in a segmented image(equivalent to catchment basins)and the boundaries among them(analogous to the ridge lines).

In MATLAB

The IPT function watershed implements the watershed transform.It takes an in-put image and(optionally)a connectivity criterion(4-or8-connectivity)as input parameters and produces a labeled matrix(of the same size as the input image)as a result.Elements labeled1and higher belong to a unique watershed region,iden-ti?ed by their number,whereas elements labeled0do not belong to any watershed region.

15.4.1The Distance Transform

The distance transform is a useful tool employed in conjunction with the water-shed transform.It computes the distance from every pixel to the nearest nonzero-valued pixel.It is implemented in MATLAB by function bwdist,which allows speci?cation of the distance method(Euclidean distance being the default)to be used.

EXAMPLE15.4

This example shows the creation of a test matrix of size5×5and the results of com-puting the distance transform using bwdist and two different distance calculations: Euclidean and city block.

>>a=[01101;11100;00010;00000;01000] a=

01101

11100

00010

00000

01000

>>b=bwdist(a)

TUTORIAL15.1:IMAGE THRESHOLDING379 b=

1.000000 1.00000

000 1.0000 1.0000

1.0000 1.0000 1.00000 1.0000

1.4142 1.0000 1.4142 1.0000 1.4142

1.00000 1.0000

2.0000 2.2361

>>b=bwdist(a,’cityblock’)

b=

10010

00011

11101

21212

10123

EXAMPLE15.5

Figure15.10shows an example of segmentation using watershed.It uses a binarized and postprocessed version of the coins test image as input(a).Part(b)shows the results of the distance transform calculations.Part(c)shows the ridge lines obtained as a result of applying the watershed transform.Finally,part(d)shows the overlap between parts(a)and(c),indicating how the watershed transform results lead to an excellent segmentation result in this particular case.

15.5TUTORIAL15.1:IMAGE THRESHOLDING

Goal

The goal of this tutorial is to learn to perform image thresholding using MATLAB and the IPT.

Objectives

?Learn how to visually select a threshold value using a heuristic approach.

?Explore the graythresh function for automatic threshold value selection.

?Learn how to implement adaptive thresholding.

What You Will Need

?gradient_with_text.tif

380IMAGE SEGMENTATION

FIGURE15.10Segmentation using the morphological watershed transform:(a)complement of the image shown in Figure15.3;(b)distance transform;(c)watershed ridge lines;(d)result of segmentation.

Procedure

Global Thresholding

The?rst method of thresholding that we will explore involves visually analyzing the histogram of an image to determine the appropriate value of T(the threshold value).

1.Load and display the test image.

I=imread(’coins.png’);

figure,imshow(I),title(’Original Image’);

2.Display a histogram plot of the coins image to determine what threshold level

to use.

figure,imhist(I),title(’Histogram of Image’);

Question1Which peak of the histogram represents the background pixels and which peak represents the pixels associated with the coins?

The histogram of the image suggests a bimodal distribution of grayscale values. This means that the objects in the image are clearly separated from the background.

TUTORIAL15.1:IMAGE THRESHOLDING381

FIGURE15.11Histogram plot with data cursor selection.

We can inspect the X and Y values of the histogram plot by clicking the“inspect”icon and then selecting a particular bar on the graph.

3.Inspect the histogram near the right of the background pixels by activating the

data cursor.To do so,click on the“inspect”icon.

Figure15.11illustrates what the selection should look like.The data cursor tool suggests that values between80and85could possibly be used as a threshold,since they fall immediately to the right of the leftmost peak in the histogram.Let us see what happens if we use a threshold value of85.

4.Set the threshold value to85and generate the new image.

T=85;I_thresh=im2bw(I,(T/255));

figure,imshow(I_thresh),title(’Threshold Image(heuristic)’); Question2What is the purpose of the im2bw function?

Question3Why do we divide the threshold value by255in the im2bw function call?

You may have noticed that several pixels—some white pixels in the background and a few black pixels where coins are located—do not belong in the resulting image. This small amount of noise can be cleaned up using the noise removal techniques discussed in chapter12.

382IMAGE SEGMENTATION

Question4Write one or more lines of MATLAB code to remove the noise pixels in the thresholded image.

The thresholding process we just explored is known as the heuristic approach. Although it did work,it cannot be extended to automated processes.Imagine taking on the job of thresholding a thousand images using the heuristic approach!MATLAB’s IPT function graythresh uses Otsu’s method[Ots79]for automatically?nding the best threshold value.

https://www.doczj.com/doc/d84884889.html,e the graythresh function to generate the threshold value automatically.

T2=graythresh(I);

I_thresh2=im2bw(I,T2);

figure,imshow(I_thresh2),title(’Threshold Image(graythresh)’); Question5How did the graythresh function compare with the heuristic approach?

Adaptive Thresholding

Bimodal images are fairly easy to separate using basic thresholding techniques dis-cussed thus far.Some images,however,are not as well behaved and require a more advanced thresholding technique such as adaptive thresholding.Take,for example, one of the images we used back in Tutorial6.1:a scanned text document with a nonuniform gradient background.

6.Close all open?gures and clear all workspace variables.

7.Load the gradient_with_text image and prepare a subplot.

I=imread(’gradient_with_text.tif’);

figure,imshow(I),title(’Original Image’);

Let us see what happens when we attempt to threshold this image using the tech-niques we have learned so far.

8.Globally threshold the image.

I_gthresh=im2bw(I,graythresh(I));

figure,imshow(I_gthresh),title(’Global Thresholding’); figure,imhist(I),title(’Histogram of Original’);

As you may have noticed,we cannot pick one particular value to set as the threshold value because the image is clearly not bimodal.Adaptive thresholding may help us in this instance.To properly implement adaptive thresholding,we must use the blkproc function to perform an operation on small blocks of pixels one at a time.

TUTORIAL15.1:IMAGE THRESHOLDING383

In order to use the function,we must specify what is to be done on each block of pixels.This can be speci?ed within a function that we will create manually.Let us ?rst set up this function.

9.Close all open?gures.

10.Start a new M-File in the MATLAB Editor.

11.De?ne the function as well as its input and output parameters in the?rst line.

function y=adapt_thresh(x)

This function will be used to de?ne each new block of pixels in our image.Basically all we want to do is perform thresholding on each block individually,so the code to do so will be similar to the code we previously used for thresholding.

12.Add this line of code under the function de?nition.

y=im2bw(x,graythresh(x));

When the function is called,it will be passed a small portion of the image,and will be stored in the variable x.We de?ne our output variable y as a black and white image calculated by thresholding the input.

13.Save your function as adapt_thresh.m in the current directory.

We can now perform the operation using the blkproc function.We will adap-tively threshold the image,10×10pixel blocks at a time.

14.Perform adaptive thresholding by entering the following command in the com-

mand window.Note that it may take a moment to perform the calculation,so be patient.

I_thresh=blkproc(I,[1010],@adapt_thresh);

15.Display the original and new image.

figure

subplot(1,2,1),imshow(I),title(’Original Image’);

subplot(1,2,2),imshow(I_thresh),title(’Adaptive Thresholding’);

The output is not quite what we expected.If you look closely,however,the opera-tion was successful near the text,but everywhere else it was a disaster.This suggests that we need to add an extra step to our function to compensate for this unwanted effect.Over the next few steps,let us examine the standard deviation of the original image where there is text,and where there is not.

384IMAGE SEGMENTATION 16.Calculate the standard deviation of two10×10blocks of pixels;one where

there is text and another where there is not.

std_without_text=std2(I(1:10,1:10))

std_with_text=std2(I(100:110,100:110))

Question6What is the difference between the standard deviation of the two blocks of pixels?Explain.

Since there is such a difference between a block with and without text,we can use this information to improve our function.Let us replace the one line of code we previously wrote with the new code that will include an if statement:if the standard deviation of the block of pixels is low,then simply label it as background;otherwise, perform thresholding on it.This change should cause the function to only perform thresholding where text exists.Everything else will be labeled as background.

17.Replace the last line of our function with the following code.Save the function

after the alteration.

if std2(x)<1

y=ones(size(x,1),size(x,2));

else

y=im2bw(x,graythresh(x));

end

Question7How does our function label a block of pixels as background?

18.Now rerun the block process(in the command window)to see the result.

I_thresh2=blkproc(I,[1010],@adapt_thresh);

figure,subplot(1,2,1),imshow(I),title(’Original Image’);

subplot(1,2,2),imshow(I_thresh2),title(’Adaptive Thresholding’); Question8How does the output of the new function compare with the old? Question9What is the main limitation of the adaptive thresholding function developed in this tutorial?

WHAT HAVE WE LEARNED?

?Image segmentation is the process of grouping image pixels into meaningful, usually connected,regions.It is an important(and often required)step in many image processing solutions.It establishes the transition between treating the image as a whole to processing individual relevant regions.

毕设开题报告-及开题报告分析

开题报告如何写 注意点 1.一、对指导教师下达的课题任务的学习与理解 这部分主要是阐述做本课题的重要意义 2.二、阅读文献资料进行调研的综述 这部分就是对课题相关的研究的综述落脚于本课题解决了那些关键问题 3.三、根据任务书的任务及文件调研结果,初步拟定执行实施的方案(含具体进度计划) 这部分重点写具体实现的技术路线方案的具体实施方法和步骤了,具体进度计划只是附在后面的东西不是重点

南京邮电大学通达学院毕业设计(论文)开题报告

文献[5] 基于信息数据分析的微博研究综述[J];研究微博信息数据的分析,在这类研究中,大多数以微博消息传播的三大构件---微博消息、用户、用户关系为研究对象。以微博消息传播和微博成员组织为主要研究内容,目的在于发祥微博中用户、消息传博、热点话题、用户关系网络等的规律。基于微博信息数据分析的研究近年来在国内外都取得了很多成果,掌握了微博中的大量特征。该文献从微博消息传播三大构件的角度,对当前基于信息数据分析的微博研究进行系统梳理,提出微博信息传播三大构件的概念,归纳了此类研究的主要研究内容及方法。 对于大多用户提出的与主题或领域相关的查询需求,传统的通用搜索引擎往往不能提供令人满意的结果网页。为了克服通用搜索引擎的以上不足,提出了面向主题的聚焦爬虫的研究。文献[6]综述了聚焦爬虫技术的研究。其中介绍并分析了聚焦爬虫中的关键技术:抓取目标定义与描述,网页分析算法和网页分析策略,并根据网络拓扑、网页数据内容、用户行为等方面将各种网页分析算法做了分类和比较。聚焦爬虫能够克服通用爬虫的不足之处。 文献[7]首先介绍了网络爬虫工作原理,传统网络爬虫的实现过程,并对网络爬虫中使用的关键技术进行了研究,包括网页搜索策略、URL去重算法、网页分析技术、更新策略等。然后针对微博的特点和Ajax技术的实现方法,指出传统网络爬虫的不足,以及信息抓取的技术难点,深入分析了现有的基于Ajax的网络爬虫的最新技术——通过模拟浏览器行为,触发JavaScript事件(如click, onmouseo ver等),解析JavaScript脚本,动态更新网页DOM树,抽取网页中的有效信息。最后,详细论述了面向SNS网络爬虫系统的设计方案,整体构架,以及各功能模块的具体实现。面向微博的网络爬虫系统的实现是以新浪微博作为抓取的目标网站。结合新浪微博网页的特点,通过模拟用户行为,解析JavaSc ript,建立DOM树来获取网页动态信息,并按照一定的规则提取出网页中的URL和有效信息,并将有效信息存入数据库。本系统成功的实现了基于Ajax技术的网页信息的提取。 文献[8]引入网页页面分析技术和主题相关性分析技术,解决各大网站微博相继提供了抓取微博的API,这些API都有访问次数的限制,无法满足获取大量微博数据的要求,同时抓取的数据往往很杂乱的问题。展开基于主题的微博网页爬虫的研究与设计。本文的主要工作有研究分析网页页面分析技术,根据微博页面特点选择微博页面信息获取方法;重点描述基于“剪枝”的广度优先搜索策略的思考以及设计的详细过程,着重解决URL的去重、URL地址集合动态变化等问题;研究分析短文本主题抽取技术以及多关键匹配技术,确定微博主题相关性分析的设计方案;最后设计实现基于主题的微博网页爬虫的原型系统,实时抓取和存储微博数据。本文研究的核心问题是,根据微博数据的特点设计一种基于“剪枝”的广度优先搜索策略,并将其应用到微博爬虫中;同时使用微博页面分析技术使得爬虫不受微博平台API限制,从而让用户尽可能准确地抓取主题相关的微博数据。通过多次反复实验获取原型系统实验结果,将实验结果同基于API微博爬虫和基于网页微博爬虫的抓取效果进行对比分析得出结论:本文提出的爬行策略能够抓取主题相关的微博数据,虽然在效率上有所降低,但在抓取的微博数据具有较好的主题相关性。这实验结果证明本论文研究的实现方案是可行的。 文献[9]阐述了基于ajax的web应用程序的爬虫和用户界面状态改变的动态分析的过程和思路。文献[10]对于全球社交网络Twitter,设计并实现了,一个爬虫系统,从另一个角度阐明了Python在编写爬虫这个方面的强大和快速。仅仅用少量的代码就能实现爬虫系统,并且再强大的社交网站也可

企业经营情况调研报告

企业经营情况调研报告 篇一:公司经营情况调查报告201410 关于***有限公司经营情况的调查报告 被调查企业:**有限公司 被调查人:** 调查日期:2014年10月 调查人:** 报告人:** 一、企业概况 **公司前身是武鸣县乡镇企业——**县**淀粉厂,原建设单位为**,于1994年经**批准立项、**环评批复而建设淀粉生产线和酒精生产线,2007年8月**公司整体收购了该厂的全部资产。 **公司成立于2006年2月,注册资本人民币1000万元,地址位于**镇**村,是一家专业生产食用酒精和淀粉制品的

企业。法定代表人: **,股东**占公司60%的股份,股东**占公司36%的股份,股东**占公司4%的股份。公司下设人力资源部、财务部、市场部、车间等内部管理机构,总经理**,现有职工**人,其中大中专学历以上占30%。 2009年公司被评为**市农业产业化重点龙头企业,2010年被评为安全生产标准化三级企业,2009年和2010年连续两年被评为纳税超百万元企业;并经**市工信委、**酿酒协会、**局进行产能核定,**号文件《关于**公司食用酒精生产线符合产业政策的函》批准生产。 2013年末公司总资产15137万元,其中固定资产10768万元,占地面积77亩。公司成立之初至2012年期间依靠**镇丰富的木薯资源,引进国内外的工艺技术进行食用淀粉和酒精生产,所产“**”牌食用淀粉及酒精,应用于造纸、粘合剂、纺织、食品、医药、化工等行业,主要销往**、**等地。 几年来,先后投入了大量资金,对

生产工艺、环保设施进行了全面的升级改造,完成了年产3万吨酒精生产线技改项目建设、年处理108万立方废液量的环保处理站项目建设、年产1200万Nm3/a生物 质燃气的厌氧系统项目建设,25T/h 混烧甲烷的生物质节能锅炉项目建设、年发电量1080万度的蒸汽发电站项目建设、年产1万吨生物有机肥项目建设、1万亩农业示范园项目建设等。但自2012年以后,当地木薯种植锐减,公司木薯淀粉生产线停工。公司于2013年至2014年投入资金八千多万元对食用酒精生产项目进行了技术改造。目前,项目已竣工投入生产。 二、财务及经营状况分析 **公司提供了2012年度、2013年度审计年报(审计意见为无保留意见)和2014年9月份财务报表,财务状况反映见下表: **公司近期财务状况表 (一)财务指标说明

高中化学选修5常见有机反应的十大类型

常见有机反应的十大类型 1. 取代反应 有机物分子里的某些原子或原子团被其他原子或原子团所代替的反应。(1)卤代: (2)硝化: (3)磺化: (4)卤代烃水解: (5)酯水解: (6)羟基()取代: (7)分子间脱水:

2. 加成反应 有机物分子中双键(或三键)两端的碳原子与其他原子或原子团直接结合生成新的化合物的反应。 (1)碳碳双键的加成: (2)碳碳三键的加成: (3)醛基的加成: (4)苯环的加成: 3. 加成聚合(加聚)反应 相对分子质量小的不饱和化合物聚合成相对分子质量大的高分子化合物的反应。 (1)丙烯加聚: (2)二烯烃加聚:

4. 缩合聚合(缩聚)反应 单体间相互反应而生成高分子化合物,同时还生成小分子(如水、氨、氯化氢等)的反应(又叫逐步聚合反应)。 (1)制酚醛树脂: (2)缩聚制酯: (3)氨基酸缩聚: 5. 消去反应 有机化合物在一定条件下,从一个分子中脱去一个小分子(如水、卤化氢等)而生成不饱和(含双键或三键)化合物的反应。 6. 氧化还原反应 在有机化学中,通常把有机物得氧或去氢的反应称为氧化反应;反之,加氢或去氧的反应称为还原反应。 (1)氧化反应:

(2)还原反应: 7. 酯化反应(亦是取代反应) 酸和醇起作用,生成酯和水的反应 8. 水解反应(亦是取代反应,其中卤代烃、酯的水解见取代反应部分) 化合物和水反应生成两种或多种物质的反应(有卤代烃、酯、酰胺、糖等)。 麦芽糖葡萄糖 9. 脱水反应(又叫碳化) 有机物分子脱去相当于水的组成的反应。

10. 裂化反应 在一定条件下,把相对分子质量大、沸点高的长链烃,断裂为相对分子质量小、沸点低的短链烃的反应。 (责任编辑:化学自习室)

爬虫开题报告

. '. 爬虫程序 一、国内外发展形势 随着数据科学的迅速发展,诸如机器学习,人工智能等新兴技术极大地方便了人们的生活。来越多的应用涉及到大数据,而这些大数据的属性、包括数量、速度、多样性等等都是呈现了大数据不断增长的复杂性。从而,大数据的获取和分析在大数据领域就显得尤为重要,可以说是决定最终信息是否有价值的决定性因素。 万维网上有着无数的网页,包含着海量的信息,无孔不入、森罗万象。但很多时候,无论出于数据分析或产品需求,我们需要从某些网站,提取出我们感兴趣、有价值的内容,但是纵然是进化到21世纪的人类,依然只有两只手,一双眼,不可能去每一个网页去点去看,然后再复制粘贴。所以我们需要一种能自动获取网页内容并可以按照指定规则提取相应内容的程序,这就是爬虫。爬虫本身不区分到底是运行在 windows还是Linux,又或是OSX,但从业务角度讲,我们把运行在服务端(后台)的,称之为后台爬虫。而现在,几乎所有的爬虫都是后台爬虫。 而爬虫数据获取的基础,经过这么多年的发展,除了面对surfaceweb(即表层Web,由网页沟通,网页之间通过超链接关联)的常用爬虫,各种面对垂直领域和特定主题的爬虫(focusedcrawler)成为热点。 二、项目解决了什么问题及创新点 本项目解决了数据科学所依赖的数据来源的问题,帮助数据科学工作者获取更多更有价值的数据。同时,本项目聚焦于新浪微博、拉勾网、房天下等各项极有价值的数据,利用现有技术在项目中实现了免登陆、多目标爬取数据,同时针对爬取的数据进行了初步的筛选过滤,去掉多余信息,除了可以节省本地空间之外还方便数据科学工作者对数据进行二次清洗、提炼,从而得到更有价值的信息。本项目还针对爬虫的作用机制以及设计模式进行了优化,采用多线程的技术可以明显提高I/O操作的速度,同时因为采用了合适的设计模式,可以及时地将内存中的数据导入到数据库中,极大地减少了内存资源的占用,使爬虫程序在运行期间,尽可能少地占用计算机资源。三、技术路线及执行计划 理论上来说,任何支持网络通信的语言都是可以写爬虫的,爬虫本身虽然语言关系不大,但是,总有相对顺手、简单的。目前来说,大多数爬虫是用后台脚本类语言写的,其中python无疑是用的最多最广的,并且页诞生了很多优秀的库和框架,如scrapy、BeautifulSoup 、pyquery、Mechanize等。但是一般来说,搜索引擎的爬虫对爬虫的效率要求更高,会选用C#、C++、Java、Go(适合高并发)。本项目将采用Python 作为爬虫实现语言对爬虫进行编写,同时辅以相关的功能包以及C#编写的图形界面。 爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;如果有网站不愿本站数据流出,则会针对爬虫特性进行识别,将爬虫拒之门外;所以一个完整的爬虫一般会包含如下几个模块:网络请求模块、爬取流程控制模块、内容分析提取模块、反爬虫对策模块(如果需要)。同时辅以C#编写的图形界面,让爬虫变得更加易用,对用户更加友好。

公司运营情况报告

公司运营情况报告 篇一:企业经营情况报告 企业经营情况报告 (本文来自:小草范文网:公司运营情况报告)武候区国税局: 我公司成都####有限公司经武候工商行政管理局批准于XX年#月#日正式成立,税务登记时间XX年#月#日。本公司法人代表:#。主要经营范围:#。经我公司申请,贵局于XX年5月25日书面批准认定我公司从XX年#月#日进入(辅导期)增值税一般纳税人。 我公司注册资本100万元,主要供应商为###限公司,客户零散,目前已经成交的客户有###有限公司等。从09年#月份开始营运,#月份做为小规模企业实现销售收入为#元,其中不含税销售收入为#元,缴纳增值税额为#元。实际#月份有意向和我们交易的金额###多万元,但这些客户都是一般纳税人,必须要求我公司开具税率17%增值税专用发票抵扣,从而致使很多业务暂时没有做成,预计XX年实现销售收入100万元。 成都###有限公司 XX年#月#日 篇二:公司经营情况总结报告

公司经营情况总结报告 一、公司基本情况简介 长城宽带网络服务有限公司(Great Wall Broadband Network Service Co., Ltd.缩写为GWBN)成立于XX年4月,属国营企业,由中信集团全资控股。是投资近30亿元建立,辐射全国大中城市的高科技电信网络运营服务公司。 长城宽带总部设于北京,公司法定代表人王之。经过10年的发展,长城宽带已经成为全国最大的驻地网运营商。XX 年长城宽带荣获中国互联网协会授予的“企业信用AA+级”荣誉称号。长城宽带将向广大用户展示一个更加全面的“宽带专家”形象,引领用户走向更加美好的网络新生活。 伴随中国宽带产业的健康成长,长城宽带作为全国最大的驻地运营商,公司秉承“精诚服务,全网关怀”的经营理念,与 CISCO 、 IBM 、富士通、电信、联通、泰瑞比、新浪、新视野等多家国内外知名企业强强连手,不断地在网络设备、技术升级及宽带应用产品上为全国36个大中城市用户提供更新更好的服务。 重庆长城宽带网络服务有限公司为长城宽带网络服务有限公司在重庆的分公司。成立于XX年8月,主要负责长城宽带在重庆地区的网络建设维护和运营。目前公司的宽带网络主要分布渝中,南岸,九龙坡,江北,渝北,沙坪坝,

爬虫开题报告

爬虫程序 一、国内外发展形势 随着数据科学的迅速发展,诸如机器学习,人工智能等新兴技术极大地方便了人们的生活。来越多的应用涉及到大数据,而这些大数据的属性、包括数量、速度、多样性等等都是呈现了大数据不断增长的复杂性。从而,大数据的获取和分析在大数据领域就显得尤为重要,可以说是决定最终信息是否有价值的决定性因素。 万维网上有着无数的网页,包含着海量的信息,无孔不入、森罗万象。但很多时候,无论出于数据分析或产品需求,我们需要从某些网站,提取出我们感兴趣、有价值的内容,但是纵然是进化到21世纪的人类,依然只有两只手,一双眼,不可能去每一个网页去点去看,然后再复制粘贴。所以我们需要一种能自动获取网页内容并可以按照指定规则提取相应内容的程序,这就是爬虫。爬虫本身不区分到底是运行在 windows还是Linux,又或是OSX,但从业务角度讲,我们把运行在服务端(后台)的,称之为后台爬虫。而现在,几乎所有的爬虫都是后台爬虫。 而爬虫数据获取的基础,经过这么多年的发展,除了面对surfaceweb(即表层Web,由网页沟通,网页之间通过超链接关联)的常用爬虫,各种面对垂直领域和特定主题的爬虫(focusedcrawler)成为热点。 二、项目解决了什么问题及创新点 本项目解决了数据科学所依赖的数据来源的问题,帮助数据科学工作者获取更多更有价值的数据。同时,本项目聚焦于新浪微博、拉勾网、房天下等各项极有价值的数据,利用现有技术在项目中实现了免登陆、多目标爬取数据,同时针对爬取的数据进行了初步的筛选过滤,去掉多余信息,除了可以节省本地空间之外还方便数据科学工作者对数据进行二次清洗、提炼,从而得到更有价值的信息。本项目还针对爬虫的作用机制以及设计模式进行了优化,采用多线程的技术可以明显提高I/O操作的速度,同时因为采用了合适的设计模式,可以及时地将内存中的数据导入到数据库中,极大地减少了内存资源的占用,使爬虫程序在运行期间,尽可能少地占用计算机资源。三、技术路线及执行计划 理论上来说,任何支持网络通信的语言都是可以写爬虫的,爬虫本身虽然语言关系不大,但是,总有相对顺手、简单的。目前来说,大多数爬虫是用后台脚本类语言写的,其中python无疑是用的最多最广的,并且页诞生了很多优秀的库和框架,如scrapy、BeautifulSoup 、pyquery、Mechanize等。但是一般来说,搜索引擎的爬虫对爬虫的效率要求更高,会选用C#、C++、Java、Go(适合高并发)。本项目将采用Python 作为爬虫实现语言对爬虫进行编写,同时辅以相关的功能包以及C#编写的图形界面。 爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;如果有网站不愿本站数据流出,则会针对爬虫特性进行识别,将爬虫拒之门外;所以一个完整的爬虫一般会包含如下几个模块:网络请求模块、爬取流程控制模块、内容分析提取模块、反爬虫对策模块(如果需要)。同时辅以C#编写的图形界面,让爬虫变得更加易用,对用户更加友好。

chapter15答案

Chapter 15 Managers and Communication 1) Formal communication can control behavior, but informal communication cannot. Answer: FALSE 2) A sender initiates a message by encoding a thought. Answer: TRUE 3) E-mail increases filtering because electronic communication is faster. Answer: FALSE 4) Communication that takes place among employees on the same organizational level is called lateral communication. Answer: TRUE 5) All electronic information is inadmissible in court. Answer: FALSE 6) In which of the following cases has communication occurred? A) Gary updates his blog regularly, even though no one reads it. B) Brian attends all the Algebra lectures, but is unable to understand the subject. C) Jen has sent an urgent e-mail to her Japanese colleague, but a translator is not yet available. D) Ana tells her manager that she needs a new computer, but he says that the company can't afford it. Answer: D 7) George prepares a memorandum explaining the objectives of a newly created work team that he is expected to manage, and makes sure it reaches each team member. He is involved in ________. A) deciphering the message B) organizational communication C) lateral communication D) decoding the message Answer: B 8) Complexity capacity refers to the degree to which the communication method ________. A) offers a reasonable assurance of confidentiality B) makes a simple message seem more complex C) effectively processes complicated messages D) offers quick and accurate feedback Answer: C 9) Which of the following methods of communication offers high scanability? A) publications B) face-to-face communication C) meetings D) voice mail Answer: A

有机反应的主要类型

有机反应的主要类型、有机物的制备一、基础梳理

2 、烃的衍生物的相互转化中有机反应类型之间的关系 (1)相互取代关系:如 R -X R -OH : (2)加成消去关系:如 烯烃 卤代烃 (3)氧化还原关系:如 -CH 2OH -CHO (4)结合重组关系:如 RCOOH +R -OH RCOOR +H 2O 二、考点俐析 考点1:有机反应类型: 例1、茉莉醛具有浓郁的茉莉花香,其结构简式如下所示: 关于茉莉醛的下列叙述错误的是( ) A 在加热和催化剂作用下,能被氢气还原 B 能被高锰酸钾酸性溶液氧化 C 在一定条件下能与溴发生取代反应 D 不能与氢溴酸发生加成反应 2.下列有机反应中,不属于取代反应的是:( ) . 3.氧氟沙星是常用抗菌药,其结构简式如图所示,下列对氧氟沙星叙述错误.. 的是( ) N O O N OH O N CH 3F H 3C A.能发生加成、取代反应 B.能发生还原、酯化反应 C.分子内共有19个氢原子 D.分子内共平面的碳原子多于6个 三、练习巩固 1.烯烃与CO 、H 2在催化剂作用下生成醛的反应叫烯烃的醛化反应.乙烯的醛化反应为:CH 2=CH 2+CO+H 2→CH 3CH 2CHO ,由C 4H 8的烯烃进行醛化反应,得到醛的同分异构体的数目应为 A .2种 B .3种 C .4种 D .5种 2.L —多巴是一种有机物,可用于帕金森综合症的治疗,其结构简式如下: 下列关于L —多巴的叙述中不正确...的是 A .长期暴露在空气中易变质 】

B.既有酸性,又有碱性 C.一定条件下能发生聚合反应 D.分子中只有6个碳原子共平面 3.下列有机物在一定条件下反应,所生成的有机物的种类由多到少的顺序是() ①甲醇和乙醇的混合物与浓硫酸加热生成醚②乙二醇与乙酸酯化反应③氨基乙酸和丙氨酸生成二肽④苯酚和浓溴水反应 A.④③②①B.①②③④C.③①②④D.③②④① 4. 下列5个有机化合物中,能够发生酯化、加成和氧化3种反应的是() ① CH2===CHCOOH ② CH2===CHCOOCH3 ③ CH2===CHCH2OH ④ CH3CH2CH2OH ⑤ CH2CH(OH)CH2CHO A. ①③④ B.②④⑤ C. ①③⑤ D. ①②⑤ 5.拟除虫菊酯是一类高效、低毒、对昆虫具 ) 有强烈触杀作用的杀虫剂,其中对光稳定的 溴氰菊醋的结构简式如右图: 下列对该化合物叙述正确的是() A 属于芳香烃 B 属于卤代烃 C 在酸性条件下不水解 D 在一定条件下可以发生加成反应 6、将用于2008年北京奥运会的国家游泳中心(水立方)的建筑采用了膜材料ETFE,该材料 为四氟乙烯与乙烯的共聚物,四氟乙烯也可与六氟丙烯共聚成聚全氟乙丙烯。下列说法错误 ..的是() A.ETFE分子中可能存在“—CH2—CH2—CF2—CF2—”的连接方式 B.合成ETFE及合成聚全氟乙丙烯的反应均为加聚反应 C.聚全氟乙丙烯分子的结构简式可能为CF2CF2CF2CF2CF2n D.四氟乙烯分子中既含有极性键又含有非极性键 7.有七种物质:①甲烷、②苯、③聚乙烯、④聚异戊二烯、⑤2-丁炔、⑥环己烷、⑦环已烯,既能使酸性高锰酸钾溶液褪色.又能使溴水因反应而褪色的是 () ( A.③④⑤ B.④⑤ C.④⑤⑦ D.③④⑤⑦ 8.某有机物的结构简式为CH 2 CHO CH 2 COOH CH 2 CH 2 OH ,它在一定条件下可能发生的反应是() ①加成;②水解;③酯化;④氧化;⑤中和;⑥消去;⑦还原A.①③④⑤⑥⑦B.①③④⑤⑦C.①③⑤⑥⑦D.②③④⑤⑥

常见加聚反应的类型有:

常见加聚反应的类型有: 同一种单体加聚,该单体一般是单烯烃或共轭二烯烃。 由不同单体加聚,单体一般为烯烃。 常见缩聚反应的类型有: 酚醛缩聚。 氨基酸缩聚。 羟基+羧基。 由高聚物找单体,一般将高聚物主链上的碳原子以偶数个断裂;若按此断裂写不出单体,一般此高聚物为缩聚反应得到的高聚物,要补充消去的小分子物质。 【例1】 A 、 B 、 C 、 D 、 E 、 F 、 G 、 H 、 I 、 J 均为有机化合物。根据以下框图,回答问题: ⑴B 和C 均为有支链的有机化合物,B 的结构简式为______; C 在浓硫酸作用下加热反应只能生成一种烯烃 D , D 的结构简式为______________________________; ⑵G 能发生银镜反应,也能使溴的四氯化碳溶液褪色,则G 的结构简式为____________________________; ⑶⑤的化学方程式是_______________________________; ⑨的化学方程式是_________________________________; ⑷①的反应类型是__________________, ④的反应类型是__________________, ⑦的反应类型是__________________; ⑸与H 具有相同官能团的H 的同分异构体的结构简式为__________________________________________。 【例2】 PCT 是一种新型聚酯材料,下图是某研究小组合成PCT 的路线。

请回答下列问题: ⑴由A生成D的化学方程式为________; ⑵由B生成C的反应类型是________________,C的化学名称为______________; ⑶由E生成F的化学方程式为____________,该反应的类型为__________________; ⑷D的同分异构体中为单取代芳香化合物的有____________(写结构简式) ⑸B的同分异构体中,能发生水解反应,且苯环上一氯代产物只有一种的是________(写结构简式)。 【例3】(2011上海28) 异丙苯()是一种重要的有机化工原料。 根据题意完成下列填空: ⑴由苯与2-丙醇反应制备异丙苯属于_______________反应;由异丙苯制备对溴异丙苯的反应试剂和反应 条件为_______________________________。 ⑵异丙苯有多种同分异构体,其中一溴代物最少的芳香烃的名称是______________________。 ⑶α–甲基苯乙烯()是生产耐热型ABS 树脂的一种单体,工业上由异丙苯催化脱氢得到,写出由异丙苯制取该单体的另一种方法(用化学反应方程式表示)。 ⑷耐热型ABS树脂由丙烯腈(CH2=CHCN)、1,3–丁二烯和α–甲基苯乙烯共聚生成,写出该树脂的结构 简式__________(不考虑单体比例)。

定向网络爬虫-开题报告

山东科技大学 本科毕业设计(论文)开题报告 题目网络爬虫 定向爬取?脚本之家?文本信息 学院名称信息科学与工程学院 专业班级计算机科学与技术2012级2班 学生姓名包志英 学号 2 指导教师赵中英 填表时间:二0一六年三月二十八日

下,并不能很稳定的工作,内存消耗随着程序的运行而不断增大,直到达到jvm 分配的上限而崩溃。很多时候,你只能做个权衡,每个webclient使用若干次后就把它回收,然后重新启动一个,这非常影响性能。Rhino对于javascript的支持并不好,实际使用中,会发现各种Exception,很多时候会导致无法渲染出想要的结果,这个htmlunit的又一大缺陷。随着版本的更新,能够渐次解决一些问题,但是好的程序员,还是应该自己读源码来尝试解决问题。 Phantomjs相比于htmlunit,对于js的支持更接近真实的浏览器,但是并发性能差,通过java的exec调用系统命令来启动,更加降低了性能。 此外主流的浏览器都提供了相应的抓取支持,selenium可谓是一个集大成者,包含了上述的所有组件,以WebDriver的形式,适配各种爬虫组件,你可以用它操控浏览器自动抓取,当然,并发和性能的问题依然存在。 爬虫开发的主要问题是性能和反封锁。很多时候,采用高并发高频率抓取数据是可行的,前提是目标站点没有采用任何反爬措施(访问频率限制、防火墙、验证码……);更多时候,有价值的信息,一定伴随着严格的反爬措施,一旦ip 被封,什么组件都没戏了。你不得不维护一个代理IP池来解决这个问题,当然,这也带来了代理ip稳定性和速度的问题,这些问题都是无法回避的问题,我们需要针对具体的情况,采用对应的措施,以最大限度的完成爬虫爬取任务。 目前,爬虫的需求呈爆炸式增长的趋势,这是当前各种互联网创新和大数据时代的新常态。火车和八爪鱼等团队看到了这一点,并率先开发了相对完备的爬虫产品,很多用户都在使用,但是更多的用户希望直接把爬虫抓取任务外包出去,因为他们不懂技术,工具的使用需要逾越技术的鸿沟,大部分用户并没有这个逾越鸿沟的打算。我相信像猪八戒这样的技术外包平台会活的越来越好,我也相信各个技术门类会不断聚集,形成相对独立的社区,P2P的社区平台将提供爬虫开发者和爬虫需求者更加通畅的交流渠道。 目前,淘宝等平台上出现很多爬虫服务商,如,这种定制开发的服务,增加了服务商的成本,服务往往是一次性的,满足了一个用户的需求,然而具有相似需求的用户,却很难有机会找到这个服务商,这就是为什么我们需要爬虫信息交流的平台。 我有意建立这样的平台,不管是微博、微信公众号、文章,还是政府门户的

公司经营状况总结报告

公司经营状况总结报告 公司经营状况,应该是所有股东最关心的问题。那么公司经营状况总结报告怎么写呢?以下是小编整理的公司经营状况总结报告,欢迎阅读。 公司经营状况总结报告1 现在,我代表中核苏阀蝶阀有限公司向董事会做20xx年经营总结报告,请董事会审议。 (一)承接任务方面 1、承接订单再创新高。20xx年订单承接指标6000万,我公司实际承接订单万元。其中苏阀科技下达订单万元,XX 年同期万元,增加万元;自营承接订单万元,XX年同期万元,增加万元。 2、销售收入再上新台阶。20xx年,我公司实现销售收入4426万元,与XX年同期3692万元相比增加734万元。其中苏阀科技销售收入1213万元(XX年同期1011万元,增加202万元),占销售收入的27%;外销收入671万元(XX年同期488万元,增加183万元),占销售收入的15%;自营部分2542万元(XX年同期2193万元,增加349万元),占销售收入的58%。 (二)资金回笼方面 20xx年资金回笼:5229万元。其中苏阀科技1481万元;出口677万元;自营3071万元。

(三)年度利润方面 20xx年实现营业利润478万元,利润总额467万元,净利润341万元。较XX年净利润234万元同比增加107万元。 通过对上述数据的分析,我公司20xx年度在承接订单方面完成良好,销售收入方面还需要加强;在优化产品结构和控制成本与费用方面取得了极大的进步,公司盈利能力在本期获得了提高。 (一)20xx年度主要经济指标任务情况 订货:6000万元; 销售:4500万元 利润:300万元 (二)主要应对策略 1.订货目标: 20xx年蝶阀公司订货目标为6000万元人民币。其中船用阀门3100万,石油石化行业1300万,其他市场900万,出口700万。 船用阀门 我公司严格执行董事会制定的方针,积极拓展业务,与江苏很多船厂取得了联系,在技术和业务上进行良好的沟通。我公司已接到扬子江船厂、道达重工、韩通重工、南通中远船务等船厂的小批量订单。为提高公司产品在船舶市场的占有率,我公司积极开拓出口市场,与制做船舶压载系统

企业经营现状调研报告

呈阅件 榕物协综【2009】012号 福州市物业管理协会2009年11月20日 关于福州物业企业经营状况的紧急报告 一、我市物业管理发展的基本状况 随着城市化进程的提速和住房商品化不断推进,福州市从上世纪90年代中期,物业管理行业开始起步并不断发展壮大。 根据初步统计,截至今年上半年,全市已有1690个物业管理项目实施物业管理,总建筑面积达4000多万平方米,占房屋面积的55%左右,其中实施物业管理的住宅小区1186个、办公楼360多个、工业仓储用房80个、其他64个。新建住宅小区物业管理覆盖面达到100%。受益住户100多万家。全市共有435家企业依法取得物业管理企业资质,其中一级资质2家,二级资质13家,三级资质303家,暂定三级资质117家。全市物业管理从业人员近4万人。迄今为止,全市共有物业管理“市优”项目282个,“省优”项目55个,“国优”项目22个,行业产值接近10亿元。据统计,在物业行业基层员工中,农村进城务工人员占52%,复员转业人员占17.8%,下岗职工占6.7%,大中专毕业生占3.8%。物业行业是低端产业,但这个行业的发展,不仅有利于改善人居和工作环境,维护社会和谐稳定,提高城市管理的总体水平,同时对促进第三产业发展,吸收消化城乡剩余劳动力,解决社会就业问题,以及扩大居民住房消费,拉动经济发展等方面都产生着积极的影响和作用。 二、福州物业企业目前的经营状况似乎已经到了“最危险的时候” 十几年来,尽管我市物业管理行业发展迅猛,但行业总体发展前景却令人担忧。今年七月,市物协第三届理事会曾到厦、漳、泉三市考察,发现我市物业行业虽然发展最早,规模也最大,但这两年的状况表明,我们无论在高端企业数量,还是在政府支持方面都已经明显落后。最近俩个月市物协召开八次与三级资质企业共100多位负责人的座谈会,发现这些企业的运营状况十分不妙。 物业管理行业是劳动密集型行业,正常人工成本占了主营收入的70%以上,按一个劳动或管理人员服务2000平方米、收费标准平均为0.80元/平方米.月计(相当部分的旧小区,拆迁安置小区的收费标准只在0、43/平方米·月,有的

网络爬虫开题报告doc

网络爬虫开题报告 篇一:毕设开题报告及开题报告分析 开题报告如何写 注意点 1.一、对指导教师下达的课题任务的学习与理解 这部分主要是阐述做本课题的重要意义 2.二、阅读文献资料进行调研的综述 这部分就是对课题相关的研究的综述落脚于本课题解决了那些关键问题 3.三、根据任务书的任务及文件调研结果,初步拟定执行实施的方案(含具体进度计划) 这部分重点写具体实现的技术路线方案的具体实施方法和步骤了,具体进度计划只是附在后面的东西不是重点南京邮电大学通达学院毕业设计(论文)开题报告文献[5] 基于信息数据分析的微博研究综述[J];研究微博信息数据的分析,在这类研究中,大多数以微博消息传播的三大构件---微博消息、用户、用户关系为研究对象。以微博消息传播和微博成员组织为主要研究内容,目的在于发祥微博中用户、消息传博、热点话题、用户关系网络等的规律。基于微博信息数据分析的研究近年来在国内外都取得了很多成果,掌握了微博中的大量特征。该文献从微博消息传播三大构件的角度,对当前基于信息数据分析的微博研究

进行系统梳理,提出微博信息传播三大构件的概念,归纳了此类研究的主要研究内容及方法。 对于大多用户提出的与主题或领域相关的查询需求,传统的通用搜索引擎往往不能提供令人满意的结果网页。为了克服通用搜索引擎的以上不足,提出了面向主题的聚焦爬虫的研究。文献[6]综述了聚焦爬虫技术的研究。其中介绍并分析了聚焦爬虫中的关键技术:抓取目标定义与描述,网页分析算法和网页分析策略,并根据网络拓扑、网页数据内容、用户行为等方面将各种网页分析算法做了分类和比较。聚焦爬虫能够克服通用爬虫的不足之处。 文献[7]首先介绍了网络爬虫工作原理,传统网络爬虫的实现过程,并对网络爬虫中使用的关键技术进行了研究,包括网页搜索策略、URL去重算法、网页分析技术、更新策略等。然后针对微博的特点和Ajax技术的实现方法,指出传统网络爬虫的不足,以及信息抓取的技术难点,深入分析了现有的基于Ajax的网络爬虫的最新技术——通过模拟浏览器行为,触发JavaScript事件(如click, onmouseover等),解析JavaScript脚本,动态更新网页DOM树,抽取网页中的有效信息。最后,详细论述了面向SNS网络爬虫系统的设计方案,整(转载自:https://www.doczj.com/doc/d84884889.html, 小草范文网:网络爬虫开题报告)体构架,以及各功能模块的具体实现。面向微博的网络爬虫系统的实现是以新浪微博作为抓取的

企业经营的自查报告

企业经营的自查报告 本文是企业经营的自查报告,仅供参考,希望对您有所帮助,感谢阅读。 一、公司基本情况 生产经营状况:我公司成立于1952年3月,是老牌的集体企业,主要是依托铁路,承接铁路部门的货物装卸业务,依靠人工进行作业,靠人力进行肩挑背负比较原始的作业方式,形式单一,生产效率低,经济效益差,职工工资水平低。自公司成立至今,都是在艰难维持生产经营当中,特别是在2008年国家颁布新的《劳动合同》后,用工成本增加,公司又是劳动力密集性企业,致使公司的生产成本大幅增加,再加上2008年受到世界金融危机、吉首融资风暴和公路运输越来越便捷的影响,我公司的业务一落千丈,年年处于亏损状态,生存更加艰难,职工的生活也更加困难。 我公司现有职工66人,其中在职职工36人,退休职工30人,困难职工15人。困难职工当中有普通困难职工13人,特困职工2人,主要困难原因是:工资收入低,爱人无工作无收入,家中有大病病人,小孩上学和赡养老人,家庭负担重。 职工的主要诉求是:努力搞好公司的生产经营,增加公司业务,提高经济效益,增加职工工资收入和提高福利待遇。 困难职工的需求: 一是增加工资收入; 二是提高福利待遇; 三是积极帮助其家庭成员就业,增加家庭经济收入; 四是帮助其子女上学; 五是对困难家庭施于经济求助。 二、帮扶工作情况。 对公司的困难职工情况,公司认真进行了研究,积极采取相关办法解除部分困难职工问题。 一是对特别困难的职工施于经济救助,同时积极向上级汇报,争取困难资金;二是安排其能够就业的子弟到公司就业或请求上级部门为其子弟帮助就业;三是

积极争取助学资金,帮助其子女上学;四是和上级相关部门结成帮扶对子,对口进行帮扶;五是对有灾难和有重大疾病的家庭进行捐款,帮助他们渡过难关。 三、企业存在的主要困难 1、装卸业务量过低; 2、装卸价格偏低; 3、装卸工人留不住,劳动力欠缺; 4、公司内外矛盾问题较多。 四、解决困难问题的主要办法。 1、努力提高服务质量,积极奔走联系货源,增加业务量; 2、积极联系铁路沿线装卸兄弟单位,联名向铁路业务主管部门反映装卸价格偏低问题,请求提高装卸价格。 3、提高对装卸工人的劳动条件和工资福利待遇,争取留住现有工人,同时,积极联系新工人进来。 4、规范公司内部管理,依法依规解决公司内外部矛盾,最好通过司法途径解决公司的外部矛盾。 5、上级主管部门积极为企业出谋划策,搞好公司现有的业务工作,同时积极为企业寻找其他门路,为企业发展第二产业,增加公司收入。

有机化学十种反应类型详细小结精美版

有机化学十种反应类型详细小结 复习方法提示: 1、全面了解有机物所具有的反应类型有哪些?熟记相关名词,确保表达准确。 2、把握准每一类反应的概念,牢牢掌握反应中的结构变化特点。这是分析判断的依据! 3、认识相似的同一种反应类型的“归属”关系,如取代反应可以包括什么?区分相近的不同反应类型在结构变化上的“差异”性及规律,如消去反应和氧化反应,加成反应和加聚反应等等。 以下概要回顾有机的五大反应,包括:取代反应、加成反应、消去反应、聚合反应(包括加聚反应和缩聚反应),以及氧化-还原反应。 一、取代反应 定义:有机物分子里的某些原子或原子团被其它原子或原子团所代替的反应称为取代反应。 在中学化学中,取代反应包括卤代、酯化、水解、硝化和磺化等很多具体的类型。分例如下: 1、与卤素单质的取代------发生该类反应的有机物包括:烷烃、烯烃、芳香烃、醇、酚等。例如: (1).(在适当的条件下,烷烃的取代反应是可以逐步进行的,得到一系列 的混合物)。 (2). (3). CH 2=CH -CH 3 + Cl 2CH 2=CH - CH 2-Cl + HCl (4). (5).+ 2HCl 2、与混酸的硝化反应(苯及其同系物、苯酚、烷烃等均能发生硝化反应)。如: (1). + HNO 2 -NO 2 + H 2O (2). (3). 环己烷对酸、碱比较稳定,与中等浓度的硝酸或混酸在低温下不发生反应,与稀硝酸在100℃以上的封管中发生硝化反应,生成硝基环己烷。在铂或钯催化下,350℃以上发生脱氢反应生成苯。环己烷与氧化铝、硫化钼、古、镍-铝一起于高温下发生异构化,生成甲基戌烷。与三氯化铝在温和条件下则异构化为甲基环戊烷。 低碳硝基烷的工业应用日益广泛。在使用原料上,以丙烷硝化来制取是合理的途径。在工艺方面,国外较多的是以硝酸为硝化剂的气相硝化工艺,已积累了较丰富的工业经验。有代表性的反应器则是多室斯登该尔反应器。国内迄今有关硝基烷的生产和应用研究均进行得不多,这是应该引起我们充分注意的。 + 浓硫酸 △ 光照

毕设开题报告 及开题报告分析

开题报告如何写 注意点 1.一、对指导教师下达的课题任务的学习与理解 这部分主要是阐述做本课题的重要意义 2.二、阅读文献资料进行调研的综述 这部分就是对课题相关的研究的综述落脚于本课题解决了那些关键问题 3.三、根据任务书的任务及文件调研结果,初步拟定执行实施的方案(含具体进度计划) 这部分重点写具体实现的技术路线方案的具体实施方法和步骤了,具体进度计划只是附在后面的东西不是重点

南京邮电大学通达学院毕业设计(论文)开题报告 题目基于python的网络爬虫系统的设计与实现 学生姓名徐亚洲班级学号12003426 专业软件工程 一、对指导教师下达的课题任务的学习与理解 随着网络的快速发展和广泛应用,大数据时代的到来,网络就像一个巨大的数据宝库,如何快速获取其中的数据资源成为亟待完成的新需求。然而网络上的信息资源大多是无组织并且动态变化的,光靠管理员手工去管理,很难将这些庞大,繁杂的数据进行有效的保存和利用,这就促使了网络爬虫技术的兴起。 网络爬虫源自Spider(或Crawler、robots)等的意译。网络爬虫的定义有广义和狭义之分,狭义的定义为:利用标准的http协议,根据超链接和Web文档检索的方法遍历万维网信息空间的软件程序。广义的定义为:所有能利用http协议检索Web文档的软件都称之为网络爬虫。 网络爬虫又被称为做网络蜘蛛、网络机器人,主要用于网络资源的收集工作。是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。 网络爬虫已经发展了很多年,并且搜索引擎也是爬虫的一种应用,通过搜索引擎能够更快速的获得有用的数据和信息。但是,一些通用性的搜索引擎也存在着一定的局限性,通用搜索引擎返回的结果可能包含了大量用户不关心的网页内容,而且通用搜索引擎有限的服务器资源与无限的网络资源之间存在的矛盾进一步加深,还有,就是通用搜索引擎不能支持给据语义的信息提出的查询和搜索。所以学习网络爬虫有很大的意义。因此,本课题基于Python编写基本的爬虫系统,用于网路爬虫的入门,为以后的爬虫学习奠定基础。 所以,对于本课题我设计并实现以个关于入门爬虫的系统----基于python的豆瓣网爬虫系统。二、阅读文献资料进行调研的综述 网络爬虫是一个功能很强大的自动提取网页的程序,它为搜索引擎从万维网下载网页,是搜索引擎的重要组成部分。它通过请求站点上的html文档访问某一个站点。它遍历Web空间,不断从一个站点移动到另一个站点,自动建立索引,并加入到网页数据库中。网络爬虫进入某个超级文本时,利用html语言的标记结构来搜索信息,及获取指向其他超级文本的url地址,可以完全不依赖于用户的干预实现网络上的自动“爬行”和搜索。 本课题需要用MySQL来存取从网页上抓去到的数据,文献[1]讲述了MySQL数据库的入门知识,该,学习该文献能够做到MySQL数据库的基本存取操作,满足本课题的实际操作要求。文献[2] 和文献[3]讲述了Python的入门教程和Python的编程入门,通过学习文献可以了解Python的基本语法和Python的基本编程方法,对于本课题程序编写,能够拥有大概的思路和想法。文献[4]中提供了开发了一款支持并行的微博数据抓取工具的基本思路,该工具可以实时抓取微博中指定用户的粉丝信息、微博正文等内容;该工具利用关键字匹配技术,匹配符合规定条件的微博,并抓取相关内容。并且支持并行抓取信息。并行爬虫拥有较好的加速比,可以快速抓取数据。

相关主题
文本预览
相关文档 最新文档