日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

腐蚀膨胀等形态学处理c代码

發布時間:2025/3/15 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 腐蚀膨胀等形态学处理c代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
// Morph.cpp : 定義控制臺應用程序的入口點。 //#include "stdafx.h" #include "cv.h" #include "highgui.h" #include "stdio.h" #include "stdlib.h" #include "vector"using namespace std;//腐蝕 void MorphErosion(unsigned char* src, unsigned char* dst, int width, int height, int strutWidth, int structHeight) {if (width - strutWidth < 0 && height - structHeight < 0)return;if (strutWidth != structHeight)return;int mid = (strutWidth + 1) / 2 - 1;unsigned char val = 255;for (int i = mid; i < height - mid; i++){for (int j = mid; j < width - mid; j++){for (int m = 0; m < strutWidth; m++){for (int n = 0; n < structHeight; n++){if (m == mid && n == mid )continue;val &= src[(i+m) * width + j + n];}}dst[i * width + j] = val;val = 255;}} } //膨脹 void MorphDilition(unsigned char* src, unsigned char* dst, int width, int height, int strutWidth, int structHeight) {if (width - strutWidth < 0 && height - structHeight < 0)return;if (strutWidth != structHeight)return;int mid = (strutWidth + 1) / 2 - 1;unsigned char val = 0;for (int i = mid; i < height - mid; i++){for (int j = mid; j < width - mid; j++){for (int m = 0; m < strutWidth; m++){for (int n = 0; n < structHeight; n++){if (m == mid && n == mid )continue;val |= src[(i+m) * width + j + n];}}dst[i * width + j] = val;val = 0;}} } //先腐蝕后膨脹 void MorphOpen(unsigned char* src, unsigned char* tmp, int width, int height, int strutWidth, int structHeight) {MorphErosion(src, tmp, width, height, strutWidth, structHeight);MorphDilition(tmp, src, width, height, strutWidth, structHeight); }int _tmain(int argc, _TCHAR* argv[]) {IplImage * src, *dst ; src = cvLoadImage("src.bmp",0); IplImage* s=cvCreateImage(cvGetSize(src), IPL_DEPTH_8U,1);cvThreshold(src,src,180,255,CV_THRESH_BINARY);dst = cvCloneImage(src);MorphOpen((unsigned char*)src->imageData, (unsigned char*)dst->imageData, src->widthStep, src->height, 3, 3);cvShowImage("src",src); cvShowImage("dst",dst) ; cvWaitKey(0) ; cvReleaseImage(&src) ; cvReleaseImage(&dst) ; return 0; } 這是一段用C代碼實現的形態學處理算法,適當修改可用于嵌入式的圖像處理
與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的腐蚀膨胀等形态学处理c代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。