changes.old

来自「VC视频对象的跟踪提取原代码(vc视频监控源码)」· OLD 代码 · 共 165 行

OLD
165
字号
************************************************************************imgsrc library : LOG of changes************************************************************************summary of new features 18/07/96 (amb)* cleaned up environment variable handlingnow use ...setenv IA_B_TO_T ON	for images addressed from bottom to top			(default is now top to bottom  i.e (0,0) is top			 left)setenv IMAGE_ZOOM x	images are zoomed by a factor of 'x'			(for display purposes only) -- only in gl versionsetenv DISPLAY_GRAYS 1	To display 256 graylevels (messes up gl colour map)			(default 128 graylevels are displayed)setenv DISPLAY_YUV_COLOUR			To display YUV images in colour** added classes for high level image processing :-* added SourceSplitter class for processing the same image source in	  several different ways (see SourceSplitter.h, SourceSplitter.cc)* added BufferSplitter class for buffering last 'n' frames  (see SourceSplitter.h, SourceSplitter.cc)* added RepeatSource class (miscsrc.h)* added GammaCorrectSource class* added RotateSource class* added BlendSource (weighted sum of two images)* MpegStream class for loading in mpegs (uses libmpeg.a)* RGB2GRAYsrc class for converting RGB images to Grayscale* FixHoleSource for filling in holes in a binary image* get_live_or_movie_feed function (imgsrc_utils.h)  parses command line arguments  to initialise an ImageSource from the camera/ movie/ mpeg etc  see demo programs** new Image functions* added rgb_read_image -- (gl only) Function to read colour pixels  from the displayed window and return a RGB32Image. Works with  colour mapped images, zoomed images etc.* added transform (rotate, scale, translate) method* added image_blend function* added map_intensities functionother changes* on construction an array of pointers to (0,y) are generated  (improves get_pixel efficiency)* can now pass a pointer to image data when using Image constructors  The destructor will *not* delete this data in this caseAlso note* images can be output using  save_pnm method to store a PNM image    MovieStore class (irix5/sgmoviestore.cc) can be used to   output SG movies. Use ~vislib/bin/movie2mpeg to convert to  an mpeg file.- TO DO - - output MPEGs (using mpeg_encode) - convert to OpenGL - more interaction with display windows (e.g. interactive zoom)  - extensive documentation************************************************************************21/8/9618/9/96Addition of Drawing Routines by Tony Heap-modified and extended by Adam Baumberg=========================================Edits to image.h, image.cc, RGB32Image.h, RGB32Image.cc Gray8Image.h	 Gray8Image.ccAmmended the following virtual member functions to Image class:  virtual void set_draw_colour(unsigned char grey);  // accepts greyscale values in range 0..255  virtual void set_draw_colour(unsigned char r, unsigned char g,			       unsigned char b);  // accepts rgb values in range 0..255  virtual void plot_pixel(int x, int y);  virtual void draw_horizontal(int y , int x_left,  int x_right);Added the following (base class) functions    void set_line_width(realno w);  void draw_filled_circle(int x0, int y0, int r);  void draw_line(int x0 ,int y0, int x1, int y1);  void draw_circle(int xc, int yc, int r);  // draw a filled concave polygon into the image  // (see Point2.h for Point2 class)  void draw_filled_polygon(int nvertices, Point2* vertices);The draw_xxx routines are implemented in the base class, but plot_pixel, draw_horizontal, set_colour have to be done in the derived class (see RGB32Image class for examples). *******************************************************************************18/9/96 various changes (Adam Baumberg)1. drawing routines (see above)2. Grayscale to RGB conversion using a colour map array ...	Gray8Image::to_rgb(RGB32pixel* color_map, Image* res);	// maps grayscale image data to colour	// each greylevel g becomes a colour pixel, color_map[g]3. When compiling with the "USE_GL" directive, all X-stuff   is now removed (this is the default)4. improvements to SG movie class (MovieStore)   - if constructor passed zero for maximum number of frames the     movie is variable length and flushed at every add_a_frame call.     Hence if the program is interupted a valid movie is still      created.    - In this mode of operation, if the movie file already     exists when the constructor is called then new frames are      appended to the existing movie.5. patched PgmSource class to cope with variable number of digits  (e.g. frame8.pgm, frame9.pgm, frame10.pgm)   also checks for compressed images (.gz or .Z) and decompresses   them appropriately.6. added plane to plane projection function ...	 Image::plane_project(NagMatrix &inverse_projection, Image* res);   where "inverse_projection" maps a point from the new plane   to the original image plane.7. Note that the image class now requires the matrix class to   compile (-lis -lmatrix)   I have defined realno to be double (necessary for the matrix class    since the single precision nag routines are not available at the   moment).*******************************************************************************

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?