论文发表指导_期刊投稿推荐_期刊论文发表咨询_职称驿站

论文发表指导,期刊推荐,国际出版

职称驿站学术导航
关闭职称驿站导航

论文发表职称晋升 全方位咨询服务

学术出版,国际教著,国际期刊,SCI,SSCI,EI,SCOPUS,A&HCI等高端学术咨询

光栅图像纠正算法与TIF格式深讨

来源:职称驿站所属分类:地质论文
发布时间:2011-06-08浏览:64次

  摘要:本文介绍了用牛顿迭代法对栅格影像的纠正,并简要说明牛顿迭代法的基本原理和作者在AutoCAD编写程序的代码示例。同时还介绍了TIF影像的格式读取和回写图象的纹理处理。
  
  关键词:VicualC++,牛顿迭代法,光栅图像,TIF,反走样
  
   随着数字化建设的加快,对基础数据的需求也越来越大,现有的纸质图件进行扫描和矢量化,使之变成电子数据,是数字化建设之所需。但由于图纸的保存时间过久、受潮、扫描操作等各种原因都会引起图纸变形,所以,在矢量化前对光栅图像进行纠正,是保证成图的精度的一个关键环节。下面将详细说明光栅图像纠正中用到的算法、TIF图像的格式以及图像纹理的反走样。
  牛顿迭代法(Newton'smethod)
  牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x)=0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根。另外该方法广泛用于计算机编程中。定义设迭代序列{xk}收敛到x*,若存在实数p≥1及a≠0,且当k≥k0时xk=x*,有
  则称序列{xk}是p阶收敛的.α称为收敛因子。
  Newton法
  局部收敛定理:设f(x*)=0,f'(x*)≠0,且f(x)在x*附近的二阶导数f''(x)连续,则(2.01)具有二阶收敛,且
  二阶收敛表现在计算得数上就是每算一次会有多几乎一倍的精度。对于牛顿迭代法这里不过多讨论,下面是作者用VicualC编写的牛顿迭代法代码:
  intOverlayCalss::NewtonMethod(……)
  {
    ……//变量定义略
   ii=-1;
  for(i=1;i<=ff;i++)
   {
    ii=ii+1;
    Tp[ii][0]=Sour[i][X];Tp[ii][1]=Sour[i][Y];
    Tp[ii][2]=0;
    Tp[ii][3]=0;
    Tp[ii][4]=-Sour[i][X]*Dest[i][X]; Tp[ii][5]=-Dest[i][X]*Sour[i][Y];
    Tp[ii][6]=Dest[i][X];  
    ii=ii+1;
    Tp[ii][0]=0;
    Tp[ii][1]=0;
    Tp[ii][2]=Sour[i][X]; Tp[ii][3]=Sour[i][Y];
    Tp[ii][4]=-Sour[i][X]*Dest[i][Y]; Tp[ii][5]=-Sour[i][Y]*Dest[i][Y];
    Tp[ii][6]=Dest[i][Y];
   }
  xa=5;cj=ii;w=0;
     for(i=0;i<xa;i++)
      for(j=i+1;j<=xa;j++)
       z[j][i]=z[i][j]; 
      NX=xa; 
      for(k=w;k<=NX-1;k++)
      {
  e=0;
      for(i=k;i<=NX;i++)
      {
       if(fabs(z[i][k])<=fabs(e))continue;
       e=z[i][k];
       i0=i;
      }
      if(fabs(e)>fabs(-1.108447E-11))
      {
       if(i0!=k)
        for(j=k;j<=NX+1;j++)
        {
         tt=z[k][j];z[k][j]=z[i0][j];z[i0][j]=tt;
        }
        e=1.0/e;
      }
      else
       return0;//返回错误值
      }
  ……//返回迭代后
   return1;
  }
  
  栅格影像(TIFF)
   TIF影像文件是由文件头、参数指针、参数数据表和图象数据4部分组成。
  1. 文件头中有字节顺序、TIF版本号和指向第一个参数指针表的指针。
  参数指针表是由一个2字节的整数和一系列12字节参域构成。
  下面是作者编写的读取二值TIFF图像文件格式的一段代码,但没有对压缩的TIFF格式进行处理。
  voidOverlayCalss::Load_TIF()
  { 
    ……//变量定义略
  rewind(fp);
    fread(&TIF_H,8,1,fp);
   tif_b=newTIFMAPBLOCK[BlockNO-1];
   for(inti=0;i<BlockNO;i++)
   {
     fread(&tif_b[i],12,1,fp);
     switch(tif_b[i].bfcsm)
     {
     case256: 
  TIF_W=tif_b[i].bfcszz;
  dwx_mm[0]=i;
     case257: 
  TIF_HI=tif_b[i].bfcszz;
  dwx_mm[1]=i;
  case258: 
  po_no=tif_b[i].bfcszz;
  case259: //压缩
       LoadLZW();//压缩解码
      break;
  case262:
  color_index=tif_b[i].bfcszz;
  case273:
  DA_Z=tif_b[i].bfcszz;
  dwx_mm[2]=i;
      Date_S=DA_Z;
  case277:
     if(tif_b[i].bfcszz==3)
     {
      AfxMessageBox("不是一个256阶灰度TIFF文件!);

  fclose(fp);
  return;
     }
  if_color=tif_b[i].bfcszz;
  case282:
  fblx=tif_b[i].bfcszz;
  case283:
  fbly=tif_b[i].bfcszz;
  case296:
  fbldw=tif_b[i].bfcszz;
    }
   }
    if(fbldw==1)
   {
  ……
   }
   else
   {
  if(fbldw==3)
     {
  fbl_mm=10/fb;
  fbl=fb/10;
     }
  else
     {
  fbl_mm=25.4/fb;
  fbl=fb/25.4;
  }
    }
    fclose(fp);
  }
  反走样
  所为走样就是象素近似地描绘平滑的直线、多边形和诸如圆与椭圆的曲线图元边界,在光栅图形中由一系列相同亮度的离散象素构成,这种离散量表示连续量引起的失真。而反走样就是消除或减少这种效果的技术。
  结束语
  光栅图像纠正在测绘领域中是必不可少的,也是数字图像处理技术的一部分。在本文中作者已经通过二次开发工具ObjectARX,在AutoCAD环境下开发编写了程序,实现了对光栅图像的纠正。在实际作业中有一定的实用价值。
  参考文献:
  [1] 孙家广,杨长贵.1994.计算机图形学(新版)北京:清华大学出版
  [2] GeorgeShepherd,Davidkruglinski著潘爱民译VisualC++.NET技术内幕(第6版)清华大学出版社

《光栅图像纠正算法与TIF格式深讨》

本文由职称驿站首发,您身边的高端学术顾问

文章名称: 光栅图像纠正算法与TIF格式深讨

文章地址: https://m.zhichengyz.com/p-9359

相关内容推荐
27本环境科学北大核心期刊一览表
10本合金类SCI期刊推荐,多本审稿快录用率偏高或适中
护理副高评职称,著作有什么用,主编排位6可以用吗
6本肾移植相关SCI期刊推荐
103本历史学SSCI和AHCI双检索期刊推荐
5本思想政治教育CSSCI南大核心期刊推荐
10本水声工程SCI期刊推荐
医生须完成学术著作一部什么意思
未能解决您的问题?马上联系学术顾问

未能解决您的问题?

不要急哦,马上联系学术顾问,获取答案!

免费获取
扫码关注公众号

扫码关注公众号

微信扫码加好友

微信扫码加好友

职称驿站 www.zhichengyz.com 版权所有 仿冒必究
冀ICP备16002873号-3