Ansatz 1:
Matlab bietet auch Matlab Mobil https://de.mathworks.com/products/matlab-mobile.html, die die Ausführung Matlab-Code von Ihrem Gerät fähig ist, jedoch ist es nicht möglich, Bilder in Matlab zu senden.
Sie können jedoch WebCam https://play.google.com/store/apps/details?id=com.pas.webcam&hl=en verwenden und einen Server öffnen, der ziemlich einfach ist. Sie können die App im Hintergrund laufen und dann conencto in Matlab über Matlab-Mobile, und greifen Sie über Ihre IP-Adresse und in der Regel Port 8080
Ansatz 2:
Sie können ein verwenden Websocket -Server die hier umgesetzt:
https://de.mathworks.com/matlabcentral/fileexchange/50040-jebej-matlabwebsocket
weitere Informationen darüber, wie es zu bekommen zu laufen, um die auf der gitHub readme gegebenen Anweisungen folgen können, bitte hier: https://github.com/jebej/MatlabWebSocket
Ein Websocket-Server befindet sich auf der obersten Schicht der 7. Schicht (Anwendungsschicht) des OSI-Modells https://en.wikipedia.org/wiki/OSI_model und baut auf der 4. Schicht (TCP) auf. Sie müssen jedoch keine Dinge wie Puffergröße usw. angeben.
Der folgende Beispielcode stammt direkt aus dem Beispielcode aus dem github-Projekt. Um das gewünschte Ergebnis in der Android-Anwendung zu erreichen, ist es der beste Ansatz, die Client-Anwendung auf Android neu zu erstellen.
Echo Server:
classdef EchoServer < WebSocketServer
%ECHOSERVER Summary of this class goes here
% Detailed explanation goes here
properties
end
methods
function obj = EchoServer(varargin)
%Constructor
[email protected](varargin{:});
end
end
methods (Access = protected)
function onOpen(obj,conn,message)
fprintf('%s\n',message)
end
function onTextMessage(obj,conn,message)
% This function sends an echo back to the client
conn.send(message); % Echo
end
function onBinaryMessage(obj,conn,bytearray)
% This function sends an echo back to the client
conn.send(bytearray); % Echo
end
function onError(obj,conn,message)
fprintf('%s\n',message)
end
function onClose(obj,conn,message)
fprintf('%s\n',message)
end
end
end
Um es in MATLAB Art auszuführen:
s = EchoServer(30000);
Dies wird dann den Port 30000 auf dem lokalen Computer nutzen.
Erstellen Sie auf Android einfach einen WebSocket-Client und verwenden Sie Ihren URI, den Sie mit ipconfig
(Windows) oder ifconig
(Linux) herausfinden können. In Android sollten die die uri wie folgt aus:
ws://192.168.1.102:30000
Wenn die IP-Adresse nach Ihrer IP-Adresse ändern können
Webread ist ein Client, kein Server. Sie müssen Matlab wirklich einen erholsamen Server hinzufügen. Aber was ist dein allgemeines Problem? Vielleicht gibt es einen besseren Ansatz. – zapl
Vielen Dank für Ihre Informationen mit einem Server, ich werde versuchen, einen Java-Spring-Server laufen zu bekommen, der Matlab aufrufen wird. – Ghalion
https://www.mathworks.com/matlabcentral/answers/326764-how-can-i-read-a-json-file?requestedDomain=www.mathworks.com – Ibrahim