Files
ios/Xuxucheck/XuXuCheck/opencv/ContourGf.h
T
admin d6aeede2bc 导入 XuXuCheck 工程(iOS 干化学尿液试纸分析 App)
从桌面工程复制而来,作为本仓库的 Xuxucheck/ 子目录。

为控制仓库体积做了两处删减:
- 移除 Frameworks/opencv2.xcframework 下的两个 visionOS 切片
  (xros-arm64、xros-arm64-simulator,合计约 106 MB),并同步删掉该
  xcframework 内 Info.plist 里对应的两条 AvailableLibraries 记录,
  只保留 ios-arm64 与 ios-arm64_x86_64-simulator。
- 移除全部 .DS_Store 与 xcuserdata/。

已用 xcodebuild 从本目录完整编译验证:BUILD SUCCEEDED,
ProcessXCFramework 以 --platform ios 成功选中框架,产物含 3699 个 cv:: 符号
(OpenCV 确实链入),嵌入 framework 3 个,与移除无用 pod 之后的状态一致。

仓库约 206 MB,其中 OpenCV 203 MB、其余源码与依赖约 3 MB。
2026-09-23 14:17:31 +08:00

142 lines
2.3 KiB
C++

#ifndef __CONTOURGF_H__
#define __CONTOURGF_H__
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
//#include <opencv2/core/types_c.h>
using namespace cv;
enum GF_FLAG
{
Perimeter,
Area,
CenterX,
CenterY,
LeftTopX,
LeftTopY,
RightBottomX,
RightBottomY,
AspectRatio,
Rectangularity,
GrayValue,
Width,
Height,
RedPercentage,
GreenPercentage,
BluePercentage,
RotRectArea
};
class ContourGf {
private:
int contourPerimeter; //
int contourArea; //
cv::Point contourCenter; //
cv::Point leftTop;
cv::Point rightBottom;
public:
ContourGf()
{
// TODO Auto-generated constructor stub
memset(&contourCenter,0,sizeof(cv::Point));
memset(&leftTop,0,sizeof(cv::Point));
memset(&rightBottom,0,sizeof(cv::Point));
contourPerimeter=0;
contourArea=0;
}
ContourGf(int contourPerimeter,
int contourArea,
cv::Point& contourCenter,
cv::Point& leftTop,
cv::Point& rightBottom)
{
this->contourPerimeter = contourPerimeter;
this->contourArea = contourArea;
this->contourCenter = contourCenter;
this->leftTop = leftTop;
this->rightBottom = rightBottom;
}
public:
int getContourPerimeter()
{
return contourPerimeter;
}
void setContourPerimeter(int contourPerimeter)
{
this->contourPerimeter = contourPerimeter;
}
int getContourArea()
{
return contourArea;
}
void setContourArea(int contourArea)
{
this->contourArea = contourArea;
}
cv::Point getContourCenter()
{
return contourCenter;
}
void setContourCenter(cv::Point& contourCenter)
{
this->contourCenter = contourCenter;
}
void setContourCenter(int x, int y)
{
this->contourCenter.x=x;
this->contourCenter.y=y;
}
cv::Point getLeftTop()
{
return leftTop;
}
void setLeftTop(cv::Point& leftTop)
{
this->leftTop = leftTop;
}
void setLeftTop(int x, int y)
{
this->leftTop.x=x;
this->leftTop.y=y;
}
cv::Point getRightBottom()
{
return rightBottom;
}
void setRightBottom(cv::Point& rightBottom)
{
this->rightBottom = rightBottom;
}
void setRightBottom(int x, int y)
{
this->rightBottom.x=x;
this->rightBottom.y=y;
}
};
#endif