当前位置: 首页 > news >正文

做网站怎么和广告公司合作二次元网站开发的意义

做网站怎么和广告公司合作,二次元网站开发的意义,望野博物馆要门票吗,华强南网站建设【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 作为图像处理的engineer来说#xff0c;有时候我们需要提供上位机软件#xff0c;有时候需要提供下位机程序#xff0c;还有一种情况#xff0…【 声明版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 作为图像处理的engineer来说有时候我们需要提供上位机软件有时候需要提供下位机程序还有一种情况虽然不多但是也代表着一种商业合作模式。那就是部分客户虽然没有算法开发的能力但是他们还是有一定业务软件开发能力。这个时候他们需要的其实就是一个算法库。 那对于供应商来说供应算法库这个肯定是一个基础能力但是怎么保证自己的算法细节不被别人发现并且在这过程中又尽可能方便自己的调试这就是一门学问了。今天我们简单来聊一下怎么编写算法库。 1、编写算法库 图像算法尽量数据简单一些但最好不要和平台有太大的联系。如果非要联系可以再封装一层。在类构造的时候尽量简单。只有外界设置长度和宽度的时候才开始设置参数、分配内存。分配的内存也不要释放只有软件关闭的时候才去释放内存。算法的接口放在public区域而算法的细节放在private区域。当然如果需要调试的话可以再实现一下dumpImage函数。 class ImageProcess { public:int width_;int height_;private:void* pGray_;void* pEnhanced_;void* pBinary_;void* pErode_;void* pDilate_;void* pResult_;public:ImageProcess() {width_ 0;height_ 0;pGray_ NULL;pEnhanced_ NULL;pBinary_ NULL;pErode_ NULL;pDilate_ NULL;pResult_ NULL;}~ImageProcess() {if (pGray_) free(pGray_);if (pEnhanced_) free(pEnhanced_);if (pBinary_) free(pBinary_);if (pErode_) free(pErode_);if (pDilate_) free(pDilate_);if (pResult_) free(pResult_);}bool initData(int width, int height) { if (width ! width_ || height ! height_){if (pGray_) free(pGray_);if (pEnhanced_) free(pEnhanced_);if (pBinary_) free(pBinary_);if (pErode_) free(pErode_);if (pDilate_) free(pDilate_);if (pResult_) free(pResult_);}width_ width;height_ height;pGray_ (unsigned char*)malloc(width*height);pEnhanced_ (unsigned char*)malloc(width*height);pBinary_ (unsigned char*)malloc(width*height);pErode_ (unsigned char*)malloc(width*height);pDilate_ (unsigned char*)malloc(width*height);// result depend on final outputreturn true;}bool processImage(void* pData, void** ppResult) {/* ready to call private function here */return true;}void dumpImage(int level){return;}private:bool generateGrayImage(void* pSrc, void* pDst) {return true;}bool doEnhancedImage(void* pSrc, void* pDst) { return true; }bool generateBinaryImage(void* pSrc, void* pDst) {return true; }bool doErodeImage(void* pSrc, void* pDst) {return true; }bool doDilateImage(void* pSrc, void* pDst) {return true; }bool getDataFromImage(void* pDst, void** pResult) {return true; } }; 2、编写给客户的接口 给客户的接口文件也就是通常所认为的头文件。头文件部分尽量简洁最好就是类似于linux这种打开、关闭、读、写、控制五种接口。当然我们今天编写的是图像处理程序可以更加简单一点。 #ifndef RESULT_H_ #define RESULT_H_bool initData(int width, int height);bool processData(void* pData, void** ppResult);bool getWidth();bool getHeight();#endif 整个接口还是非常简洁的甚至有点过于简洁。这中间的ppResult就是核心。一般来说图像输出的可以是位置、距离、识别、大小、有没有错误等等根据实际情况而定。 3、对接口的实现和封装 前面说过ProcessImage是不会给客户的但是头文件中的内容又过于简单那么应该怎么处理呢。其实方法非常简单只需要在cpp文件中实现一个全局变量就可以了比如像这样所有的实现细节就不会暴露出来了。 static ImageProcess gImageProcess;bool initData(int width, int height) {return gImageProcess.initData(width, height); }bool processData(void* pData, void** ppResult) {return gImageProcess.processImage(pData, ppResult); }bool getWidth() {return gImageProcess.width_; }bool getHeight() {return gImageProcess.height_; }
http://www.hkea.cn/news/14411932/

相关文章:

  • 如何做商城网站小程序安徽易企建站
  • 网站团队建设沈阳网站建设小工作室
  • 大兴快速网站建设哪家好手工制作网站
  • 云南建设网官方网站北京seo产品
  • 在家帮别人做网站赚钱网站平台建设调研报告
  • 做非法网站的有没有微信推送怎么做购物网站
  • 建设银行网站调用支付源码武进建设银行网站首页
  • 做网站 做app电商图片助手
  • .vip域名的网站排名网址推广主要做些什么内容
  • wordpress 局域网访问英文seo优化包年费用
  • 南京网站推广移动端网页界面设计
  • 深圳微商城网站设计费用tk注册网站
  • 适合前端做项目的网站网站开发子账号
  • 如何做网站嵌入腾讯地图北京市建设教育协会网站
  • 网站制作的公网站开发的疑虑
  • 合肥电子商务网站建设个人证书查询网入口免费
  • 旅游网站建设的目的网站安全
  • 音乐图书馆网站建设seo排名优化公司
  • 做国际网站要多少钱wordpress js放到oss
  • 网站跳转怎么办原创服装设计师
  • 网站怎么做多级菜单网站开发费用税
  • 网站关键词排名消失陕西百度公司
  • 牡丹江3d网站开发网站备案期间可以建站
  • 网站架构分析阳泉购物网站开发设计
  • wordpress能大网站主题flash网站与html5
  • 网站建设uuluoyuan个人网页制作
  • 网站建设实践论文上海好的网站设计公司有哪些
  • 向国外支付网站开发费wordpress总结
  • 更改网站名字wordpress主题 贴吧
  • 有了源码然后如何做网站英雄联盟手游小程序被投诉