我正在尝试将自适应阈值应用于A4纸的图像,如下所示:

我使用下面的代码来应用图像处理:
+ (UIImage *)processImageWithOpenCV:(UIImage*)inputImage {
cv::Mat cvImage = [inputImage CVMat];
cv::Mat res;
cv::cvtColor(cvImage, cvImage, CV_RGB2GRAY);
cvImage.convertTo(cvImage,CV_32FC1,1.0/255.0);
CalcBlockMeanVariance(cvImage,res);
res=1.0-res;
res=cvImage+res;
cv::threshold(res,res, 0.85, 1, cv::THRESH_BINARY);
cv::resize(res, res, cv::Size(res.cols/2,res.rows/2));
return [UIImage imageWithCVMat:cvImage];
}
void CalcBlockMeanVariance(cv::Mat Img,cv::Mat Res,float blockSide=13) // blockSide - the parameter (set greater for larger font on image)
{
cv::Mat I;
Img.convertTo(I,CV_32FC1);
Res=cv::Mat::zeros(Img.rows/blockSide,Img.cols/blockSide,CV_32FC1);
cv::Mat inpaintmask;
cv::Mat patch;
cv::Mat smallImg;
cv::Scalar m,s;
for(int i=0;i<Img.rows-blockSide;i+=blockSide)
{
for (int j=0;j<Img.cols-blockSide;j+=blockSide)
{
patch=I(cv::Rect(j,i,blockSide,blockSide));
cv::meanStdDev(patch,m,s);
if(s[0]>0.01) // Thresholding parameter (set smaller for lower contrast image) …Run Code Online (Sandbox Code Playgroud) 我在UIScrollView中有两个(可能更多)视图,并希望使用分页.当我尝试使用UIScrollView的默认分页选项时出现问题,因为视图具有不同的宽度,无法正确分页.
所以我已经实现了一个可行的自定义分页代码.但是,当滚动较慢时,它不会按预期运行.(它回到没有动画的原始位置.)
以下是我目前通过UIScrollViewDelegate进行自定义分页的方法
func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
if direction == 1{
targetContentOffset.pointee.x = 0
}else{
targetContentOffset.pointee.x = 100
}
}
func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
if scrollView.panGestureRecognizer.translation(in: scrollView.superview).x > 0 {
direction = 1
}
else {
direction = 0
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,我有一个用于将简单数据发布到服务器的代码,success如果发布请求成功,它将返回一个布尔值,但是似乎在处理数据之前就已经返回了布尔值,我在做错什么吗?
public func postRequest(rawText: String) -> Bool {
var success = true
let destUrl = "http://api.getquesto.com:8080/upload/"
var request = URLRequest(url: URL(string: destUrl)!)
request.httpMethod = "POST"
let postString = rawText
request.setValue("text/plain", forHTTPHeaderField: "Content-Type")
// request.setValue("compute", forHTTPHeaderField: "Questo-Query")
// request.setValue("Fuck you", forHTTPHeaderField: "quizTitle")
request.httpBody = postString.data(using: .utf8)
print(request.httpBody!)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else { // check for fundamental networking error
print("error=\(error)")
success = false
print(success)
return …Run Code Online (Sandbox Code Playgroud) 我是swift的新手,我想在我称为mapView的图像上画两条点之间的线,我试图使用CGContext但没有结果,任何想法都有帮助吗?谢谢.
UIGraphicsBeginImageContext(mapView.bounds.size)
let context : CGContext = UIGraphicsGetCurrentContext()!
context.addLines(between: [CGPoint(x:oldX,y:oldY), CGPoint(x:newX, y:newY)])
context.setStrokeColorSpace(CGColorSpaceCreateDeviceRGB())
context.setStrokeColor(UIColor.blue.cgColor.components!)
context.setLineWidth(3)
mapView?.image?.draw(at: CGPoint(x:0, y:0))
context.strokePath()
mapView.image = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()
Run Code Online (Sandbox Code Playgroud) 我需要从XML 文件<reading type="NPSI_PM25_3HR" value="xx"/>中检索特定
属性<id>NRS</id>,然后将其解析为变量,稍后我想打印该变量,但我找不到任何方法在 Swift 中执行此操作。有什么办法可以做到这一点吗?谢谢!
ios ×4
swift ×4
c++ ×1
cgcontext ×1
function ×1
nsurlsession ×1
nsxmlparser ×1
objective-c ×1
opencv ×1
parsing ×1
swift3 ×1
xml ×1