Example #1
0
int imProcessHoughLinesDraw(const imImage* src_image, const imImage *hough, const imImage *hough_points, imImage *dst_image)
{
  int theta, line_count = 0;

  if (src_image != dst_image)
    imImageCopyData(src_image, dst_image);

  listnode* maxima = findMaxima(hough_points, &line_count, hough);

  ReplaceColor(dst_image);

  costab = (double*)malloc(180*sizeof(double));
  sintab = (double*)malloc(180*sizeof(double));

  for (theta=0; theta < 180; theta++)
  {
    double th = (M_PI*theta)/180.;
    costab[theta] = cos(th);
    sintab[theta] = sin(th);
  }

  DrawPoints(dst_image, maxima);

  free(costab); costab = NULL;
  free(sintab); sintab = NULL;

  return line_count;
}
Example #2
0
int imProcessRenderAddUniformNoise(const imImage* src_image, imImage* dst_image, float mean, float stddev)
{
  float param[2];
  param[0] = mean;
  param[1] = stddev;
  srand((unsigned)time(NULL));
  imImageCopyData(src_image, dst_image);
  return imProcessRenderOp(dst_image, do_add_uniformnoise, "Add Uniform Noise", param, 1);
}
Example #3
0
int imProcessRenderAddSpeckleNoise(const imImage* src_image, imImage* dst_image, float percent)
{
  float param[2];
  param[0] = (float)imColorMax(src_image->data_type);
  param[1] = percent / 100.0f;
  srand((unsigned)time(NULL));
  imImageCopyData(src_image, dst_image);
  return imProcessRenderCondOp(dst_image, do_add_specklenoise, "Add Speckle Noise", param);
}
Example #4
0
/*****************************************************************************\
 image:CopyData()
\*****************************************************************************/
static int imluaImageCopyData (lua_State *L)
{
  imImage* src_image = imlua_checkimage(L, 1);
  imImage* dst_image = imlua_checkimage(L, 2);

  imlua_match(L, src_image, dst_image);
  imImageCopyData(src_image, dst_image);
  return 0;
}