我想创建自己的健身房环境。我已按照此处解释的步骤进行操作: https: //github.com/openai/gym/blob/master/docs/creating-environments.md。根据他们的建议,我创建了环境(链接:https://drive.google.com/open? id=1RmcSBZYKCARaNsdlOsACrk9ls8snqxlj )。安装并运行后,将创建环境并显示打印输出“已创建,步骤”。但是,当我再次按下“运行”按钮(spyder ide:python3.7)时,它向我显示“错误:无法重新注册 id:foo-v0”。如果我按“重新启动内核”按钮,问题将暂时消失。但再次“运行”会显示相同的错误。请帮我解决这个问题。
runfile('F:/gym-foo/a.py', wdir='F:/gym-foo')
Created
Step
runfile('F:/gym-foo/a.py', wdir='F:/gym-foo')
Reloaded modules: gym_foo, gym_foo.envs, gym_foo.envs.foo_env
Traceback (most recent call last):
File "F:\gym-foo\a.py", line 3, in <module>
env = gym.make('gym_foo:foo-v0')
File "C:\Users\nasif\anaconda3\lib\site-packages\gym\envs\registration.py", line 142, in make
return registry.make(id, **kwargs)
File "C:\Users\nasif\anaconda3\lib\site-packages\gym\envs\registration.py", line 86, in make
spec = self.spec(path)
File "C:\Users\nasif\anaconda3\lib\site-packages\gym\envs\registration.py", line 106, in spec
importlib.import_module(mod_name)
File "C:\Users\nasif\anaconda3\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line …Run Code Online (Sandbox Code Playgroud) 我试图将图像文件从一台PC(客户端)发送到运行MATLAB的另一台PC(服务器),输出图像为空.
从另一个讨论中,我了解到主要问题是Java和MATLAB之间存在一些"图像矩阵不匹配".但是,我并不完全理解这个问题.
如果你能给我一些建议,我将不胜感激.
客户端Java代码:
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import javax.imageio.ImageIO;
public class myclientimage
{
public static void main(String args[]) throws IOException
{
BufferedImage img = ImageIO.read(new File("D:\\zzz.jpg"));
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(img, "jpg", baos);
baos.flush();
byte[] buffer = baos.toByteArray();
DatagramSocket clientSocket = new DatagramSocket();
InetAddress IPAddress = InetAddress.getByName("192.168.0.102");
System.out.println(buffer.length);
DatagramPacket packet = new DatagramPacket(buffer, buffer.length, IPAddress, 9091);
clientSocket.send(packet);
System.out.println("aaaa");
}
}
Run Code Online (Sandbox Code Playgroud)
服务器MATLAB代码:
udpA=udp('192.168.0.104', 9090,'LocalPort', 9091);
fopen(udpA);
A = fread(udpA, …Run Code Online (Sandbox Code Playgroud)