在OpenCV上使用类VideoCapture时如何旋转相机?(Android上的样本人脸检测).我正在旋转画布:
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
{
Matrix matrix = new Matrix();
matrix.preTranslate(
(canvas.getWidth() - bmp.getWidth()) / 2,
(canvas.getHeight() - bmp.getHeight()) / 2);
matrix.postRotate(270f, (canvas.getWidth()) / 2,
(canvas.getHeight()) / 2);
canvas.drawBitmap(bmp, matrix, null);
}
Run Code Online (Sandbox Code Playgroud)
但来自相机的图像不会旋转:面部检测不起作用.
摄像机从以下位置接收流:
protected Bitmap processFrame(VideoCapture capture) {
capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
capture.retrieve(mGray,
Highgui.CV_CAP_ANDROID_GREY_FRAME);
Run Code Online (Sandbox Code Playgroud)
更新我做了以下事情:
@Override
protected Bitmap processFrame(VideoCapture capture) {
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
Core.flip(mRgba.t(), mRgba, 0);
}
else {
}
capture.retrieve(mRgba, Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA);
capture.retrieve(mDetect_thread.mGray,
Highgui.CV_CAP_ANDROID_GREY_FRAME);
Run Code Online (Sandbox Code Playgroud)
但是不行.当我在portret方向运行程序(在Android设备上) - 程序不启动当我以横向方向运行rogram - 程序工作,但当我旋转设备,程序工作,但显示图像不旋转
在xml文件中我做下一步:
<Row>
<Key android:codes="FLAG_EDITOR_ACTION" android:keyLabel="Start" />
</Row>
Run Code Online (Sandbox Code Playgroud)
在onKeyDown方法的类键盘中,我创建下一个构造
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.FLAG_EDITOR_ACTION: {
return true;
}
...
Run Code Online (Sandbox Code Playgroud)
但是不行.怎么了?
我有一些Soap,REST servlet和现在一个WebSocket:
@ServerEndpoint("/game")
public class WebSocketgame{
...
}
Run Code Online (Sandbox Code Playgroud)
我有下一个麻烦:如果web.xml存在,WebSocket不可见.在web.xml中描述了jdbc资源,servlets ant等...当我删除web.xml时 - websocket成功可见.我该如何解决这个问题?
更新web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<servlet>
<servlet-name>ConfigServlet</servlet-name>
<servlet-class>com.example.ConfigServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>MainService</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ConfigServlet</servlet-name>
<url-pattern>/ConfigServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>JsonServlet</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.example.json</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JsonServlet</servlet-name>
<url-pattern>/json/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>propfile</param-name>
<param-value>/WEB-INF/server_config.txt</param-value>
</context-param>
<servlet-mapping>
<servlet-name>MainService</servlet-name>
<url-pattern>/MainService</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/postgres</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
Run Code Online (Sandbox Code Playgroud) 我正在尝试将照片从相机中投入使用。
\n\n@Override\npublic void onCreate() {\n super.onCreate();\n //android.os.Debug.waitForDebugger();\n\n myCamera=Camera.open();\n\n\n SurfaceView dummy=new SurfaceView(getApplicationContext());\n try {\n if(myCamera!=null)\n {\n myCamera.setPreviewDisplay(dummy.getHolder());\n myCamera.setPreviewCallback(this);\n Log.i(TAG,"myCamera is not null");\n }\n getFrames();\n\n } catch (IOException e) {\n // TODO Auto-generated catch block\n e.printStackTrace();\n Log.e(TAG, "setPreviewDisplay " + e);\n } \n myCamera.startPreview(); \n}\n\n\n public void getFrames() {\n\n new Thread(new Runnable() {\n\n public void run() {\n\n while(flag)\n {\n Log.i(TAG, "getFrames");\n try{\n\n //method();\n takePictureNoPreview();\n Thread.sleep(54);\n\n } catch (Exception e) {\n Log.e(TAG, "getFrames thread error: " + e);\n }\n }\n myCamera.release(); \n\n …Run Code Online (Sandbox Code Playgroud) android background surfaceview android-service android-camera
我想查询没有非数字符号的字段。
Cursor c=context.getContentResolver().query(Uri.parse("content://mms-sms/canonical-addresses/"), new String[] {"address","_id"}, "replace("+"address"+", '[^0-9]','')"+" LIKE ?", new String[] {"%"+subaddress+"%"}, null);
Run Code Online (Sandbox Code Playgroud)
但是当我通过子地址 8888888 在 DB 编号格式 +7(888)888-88-88 中搜索时,光标不会 moveToNext
怎么了?