我试图在Panda3D中投影一个网络摄像头的实时视频作为纹理。 但是图像不清晰,产生了不公平的噪音
我能够得到一个准确和快速的视频灰度/黑白
这是我需要投射的地方:
def room_maker(self):
room = self.loader.loadModel("location_of_model")
room.reparentTo(self.render)
room.setScale(1, 1, 0.8)
room.setPos(5, 1, 3)
room.set_hpr(360, 0, 0)
return room
这是我的投影仪
def projector(self):
proj = self.render.attachNewNode(LensNode('proj'))
lens = PerspectiveLens()
proj.node().setLens(lens)
proj.node().showFrustum()
proj.find('frustum').setColor(1, 0, 0, 1)
proj.reparentTo(self.camera)
return proj
我的纹理设置:
def my_setTexture(self):
tex = Texture()
tex.setWrapU(SamplerState.WMBorderColor)
tex.setWrapV(SamplerState.WMBorderColor)
tex.setup2dTexture(self.h, self.w,
Texture.T_unsigned_byte, Texture.FRgb)
return tex
self.h和self.w基本上是高度和宽度(480640)
我的纹理存储
self.ts = TextureStage('ts')
self.ts.setSort(1)
这基本上就是更新纹理并使用opencv的循环
def updateTex(self, task):
success, frame = self.cap.read()
frame = cv2.flip(frame, 0)
self.tex.setRamImage(frame)
# overwriting the memory with new buffer
self.room.projectTexture(self.ts, self.tex, self.proj)
# now apply it to the card
return task.cont
我需要一个清晰的实时视频上的模型作为纹理播放。 但我得到的结果是模糊和嘈杂
我的输出:
目前没有回答
相关问题 更多 >
编程相关推荐