function sysCall_vision(inData) local data={} ProximitySensorprevious=ProximitySensor ProximitySensor=sim.readProximitySensor(sensor) local handler = inData.handle if(ProximitySensorprevious<=0)and(ProximitySensor>0) then --local handler = inData.handle local packet = {} local data = {} simVision.sensorImgToWorkImg(handler) simVision.selectiveColorOnWorkImg(inData.handle,{1.00,0.29,0.21},{0.15,0.15,0.15},true,false,true) simVision.selectiveColorOnWorkImg(inData.handle,{0.28,1,0.21},{0.15,0.15,0.15},true,true,false) simVision.addBuffer1ToWorkImg(inData.handle) local _, ans=simVision.blobDetectionOnWorkImg(handler,0.1,0,false) packet = sim.unpackFloatTable(ans) local blobCount=packet[1] local dataSizePerBlob=packet[2] for i=1,blobCount,1 do local blobRelativeSize=packet[2+(i-1)*dataSizePerBlob+1] local blobOrientation=packet[2+(i-1)*dataSizePerBlob+2] local blobRelativePos={packet[2+(i-1)*dataSizePerBlob+3],packet[2+(i-1)dataSizePerBlob+4]} local realposX=cam_pos[1]+cam_x/2-cam_xpacket[2+(i-1)dataSizePerBlob+3]-0.012 local realposY=cam_pos[2]+cam_y/2-cam_ypacket[2+(i-1)*dataSizePerBlob+4] local blobBoxRelativeDimensions={packet[2+(i-1)*dataSizePerBlob+5],packet[2+(i-1)*dataSizePerBlob+6]} local blobCol=sim.getVisionSensorImage(camera,res[1]*blobRelativePos[1],res[2]*blobRelativePos[2],1,1,0) if (blobCol[1]>blobCol[2])and(blobCol[1]>blobCol[3]) then colorCode='red' end if (blobCol[2]>blobCol[1])and(blobCol[2]>blobCol[3]) then colorCode='green' end data[i]={realposX,realposY,colorCode} end for i=1,#data-1,1 do for j=1,#data-i,1 do if(data[j][1]>data[j+1][1]) then local relay={} relay=data[j] data[j]=data[j+1] data[j+1]=relay end end end sim.writeCustomDataBlock(handler, 'data3', sim.packTable(data)) sim.setIntegerSignal('getdata', 1) simVision.workImgToSensorImg(handler) end if(sim.getIntegerSignal('finishDone')==1) then data={} sim.writeCustomDataBlock(handler, 'data3', sim.packTable(data)) sim.clearIntegerSignal('finishDone') end end

Lua 视觉传感器数据处理函数 - sysCall_vision

原文地址: https://www.cveoy.top/t/topic/f2oz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录