由于我使用localbinarypatterhistogram(LBPH)算法进行识别,并使用Haarcascade进行面部检测。因此我发现,两者均给出的精度均未达到想要的水平。所以python中有没有一种机器学习算法可以根据训练后的图像检测和识别图像,并且比LBPH和haarcascade提供更高的准确性。它需要下载我觉得很无聊的Microsoft Visual Studio。
答案 0 :(得分:0)
首先,haar级联是用于面部检测的传统技术,而LBPH也是用于面部识别的传统技术。如今,基于深度学习的技术是最先进的。
import React from "react";
import "./styles.css";
class Arithmetic extends React.Component {
constructor(props) {
super(props);
this.state = {
num1: 10,
num2: 5,
action: "sub",
value: 0
};
}
componentDidMount() {
if (this.state.action === "sub") {
this.updateSub();
} else {
this.updateMul();
}
}
//the user input
updateNum1(event) {
this.setState(
{
num1: event.target.value
},
() => {
if (this.state.action === "sub") {
this.updateSub();
} else {
this.updateMul();
}
}
);
}
updateNum2(event) {
this.setState(
{
num2: event.target.value
},
() => {
if (this.state.action === "sub") {
this.updateSub();
} else {
this.updateMul();
}
}
);
}
updateAction = (action) => {
this.setState({ action }, () => {
if (action === "sub") {
this.updateSub();
} else {
this.updateMul();
}
});
};
updateSub = () => {
const { num1, num2 } = this.state;
var subtraction = num1 - num2;
this.setState({ value: subtraction });
// return subtraction;
};
updateMul = () => {
const { num1, num2 } = this.state;
var multiplication = num1 * num2;
console.log("multiplication", multiplication);
// return multiplication;
this.setState({ value: multiplication });
};
render() {
return (
<div className="container">
<div className="row">
<div className="col-md-8 calc_container">
<div className="emi_input_value">
<div className="btn-group">
<button
type="button"
class="btn btn-light active switch"
value="sub"
name="invest_type"
onClick={() => this.updateAction("sub")}
checked
>
Sub{" "}
</button>
<button
type="button"
class="btn btn-light switch"
value="mul"
name="invest_type"
onClick={() => this.updateAction("multi")}
>
Mul
</button>
</div>
<div className="form-group">
<label class="label_name">Num1</label>
<div className="btn-group">
<button
type="button"
class="btn btn-light active"
value={10}
onClick={this.updateNum1.bind(this)}
checked
>
10
</button>
<button
type="button"
class="btn btn-light"
value={15}
onClick={this.updateNum1.bind(this)}
>
15
</button>
<button
type="button"
class="btn btn-light"
value={20}
onClick={this.updateNum1.bind(this)}
>
20
</button>
<input
type="textbox"
className="form-control"
placeholder="Custom"
value={this.state.num1}
onChange={this.updateNum1.bind(this)}
/>
</div>
<div className="form-group">
<label class="label_name">Num2</label> <br></br>
<div className="btn-group">
<button
type="button"
class="btn btn-light active"
value={5}
onClick={this.updateNum2.bind(this)}
checked
>
5
</button>
<button
type="button"
class="btn btn-light "
value={10}
onClick={this.updateNum2.bind(this)}
>
10
</button>
<button
type="button"
class="btn btn-light "
value={15}
onClick={this.updateNum2.bind(this)}
>
15
</button>
<input
type="textbox"
className="form-control"
placeholder="Custom"
value={this.state.num2}
onChange={this.updateNum2.bind(this)}
/>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="emi_output">
<div class="calculated_output">
<h5>RESULT</h5>
<div class="output_ph">
<label class="output_label">will grow to</label>
<label id="output" class="output_value">
{" "}
{this.state.value}
</label>
</div>
</div>
</div>
</div>
</div>
</div>
);
}
}
export default function App() {
return (
<div className="App">
<Arithmetic />
</div>
);
}
上述所有模型都是最新模型。除opencv之外的所有后端都是最新技术。 OpenCV后端使用haar级联。 SSD是一种现代人脸检测技术,但人脸对齐基于后端的haar级联。我建议您使用VGG-Face / Facenet和MTCNN对以获得最佳效果。